Bug #3809
closedjni actors do not work
0%
Description
Actors using native libs do not work, either trunk or 1.0.
Example workflows containing some of these actors:
demos/ENM/GARP_SingleSpecies_BestRuleSet-IV.xml
demos/Matlab/MatlabExpression.xml
Related issues
Updated by Daniel Crawl over 15 years ago
I've fixed this for the command-line build.
This bug can be closed when it's fixed for the IDEs.
Updated by Chad Berkley over 15 years ago
Need to check the IDEs to make sure JNI works.
Updated by ben leinfelder over 15 years ago
in Eclipse I've been launching Kepler (org.kepler.core.loader.Loader) with the following VM argument:
-Djava.library.path=${project_loc:common}/lib
Without that argument, I get ugly java.lang.UnsatisfiedLinkError exceptions (and crash, in the case of my JRI libs)
Maybe using a code-based approach is better than a launch-based?
We could do some looping in the lib directory, and load each library on start up:
http://java.sun.com/j2se/1.5.0/docs/api/java/lang/System.html#load(java.lang.String)
Updated by ben leinfelder over 15 years ago
i'd assume that the installer/launcher version of Kepler will be able to set the java.library.path property on start up, but how would we handle different modules that might need to have their binary libraries (dll, so..) added to the path?
Updated by ben leinfelder over 15 years ago
now that the R actors (and the JRI implementations) have been moved to another module, I'm using a colon-separated list for the java.library.path when running within eclipse:
-Djava.library.path=${project_loc:common}/lib:${project_loc:r}/lib
Updated by Chad Berkley over 15 years ago
Check that this works with the installer.
Updated by Chad Berkley over 15 years ago
JNI actors now work with both the installed and the ant-executed versions of kepler. The java.library.path is also added to the path variable on windows so the dlls do not have to be put into the system32 dir.