The entire agent and public API of nalim are licensed under GPLv2 and thus it is impossible for most organization to use it as a compile time dependency.
It'd be nice if we could separate nalim into two components:
nalim-api - The public API licensed under more permissive license.
e.g. @Library, @Link, @Code, etc
nalim-agent - All other stuff that must be licensed under GPLv2 due to JVMCI usage.
e.g. Linker, Agent, etc.
A user who calls Linker.linkClass() will still have the licensing problem, but the user can avoid it by specifying the list of the classes in the agent options instead of calling Linker.linkClass(). (Please correct me if this still causes any licensing issues.)
We could also improve the nalim agent to link the classes automatically, most likely by 1) intercepting the class-loading process or 2) looking for a certain file in a JAR.
The entire agent and public API of nalim are licensed under GPLv2 and thus it is impossible for most organization to use it as a compile time dependency.
It'd be nice if we could separate nalim into two components:
nalim-api
- The public API licensed under more permissive license.@Library
,@Link
,@Code
, etcnalim-agent
- All other stuff that must be licensed under GPLv2 due to JVMCI usage.Linker
,Agent
, etc.A user who calls
Linker.linkClass()
will still have the licensing problem, but the user can avoid it by specifying the list of the classes in the agent options instead of callingLinker.linkClass()
. (Please correct me if this still causes any licensing issues.)We could also improve the nalim agent to link the classes automatically, most likely by 1) intercepting the class-loading process or 2) looking for a certain file in a JAR.