Проблема с добавлением jar-библиотеки в JNI - PullRequest
0 голосов
/ 07 марта 2011

Как добавить папку, содержащую jar-файлы в jni c ++.Например, у меня есть папка «MyLib», которая содержит «Math.jar», «Stats.jar» и «Temp.jar».Я хочу добавить «MyLib» в classpath, в который добавляются все файлы jar, например

options [0] .optionString = "-Djava.class.path = c: \ myjni \ MyLib";

вместо

options [0] .optionString = "-Djava.class.path = c: \ myjni\ MyLib \ Math.jar; c: \ myjni \ MyLib \ Stats.jar; \ c: \ myjni \ MyLib \ Temp.jar ";

1 Ответ

0 голосов
/ 07 марта 2011

Ну, ты не можешь сделать это.Вам разрешено только добавлять файлы JAR или каталоги с файлами классов в путь к классам.

Вы можете извлечь все файлы JAR в каталог и добавить этот каталог в путь к классам.

На самом деле, это хитрость,Java от версии 6.0 от Sun добавляет возможность расширения глобусов.Это должно работать в Java 6 +:

java -cp lib/*.jar

Так что вы можете попробовать это:

options[0].optionString = "-Djava.class.path=c:\myjni\MyLib\*.jar";

Я не уверен, работает ли он с параметром -D classpath.Если вы можете указать параметр classpath cia -cp, сделайте это.Обратите внимание, что расширение в JVM имеет некоторые ограничения:

http://javahowto.blogspot.com/2006/07/jdk-6-supports-in-classpath-but-be.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...