Currently, when importing a Java agent as non-raw DXL, libnotes has a hard dependency on finding a JNI environment and using classes from Notes.jar.
While there's a certain amount of natural dependency in the process of compiling agents, the classes normally used in actual source are (at least supposed to be - KB0091512) freely redistributable by way of NCSO.jar - `lotus.notes.internal.IDEHelper`, however, is not. Admittedly, neither is
AgentBase, but an API-compatible shim would be easy to make, since it wouldn't have to ever execute.
Additionally, there is no proper mechanism to inject JNI environment knowledge in core other than calling
lotus.domino.NotesThread.sinitThread(), which then imposes a semi-hard dependency on liblsxbe.
As a potential way around this, if DXL import allowed for the specification of one or more callback pointers to handle the jobs of
IDEHelper, then that should remove the primary dependency on these non-redistributable parts, and at the same time allow for Java-agent import on Java 11, which is currently broken.