У меня есть системная программа, которая запускает другие программы в специальной среде: cset shield -e PROGRAM
.Теперь, чтобы запустить программу Java, я набрал cset shield -e java PROGRAM
, но это не работает.Оказывается, я должен указать полный путь java
.Однако, PATH
установлен, поэтому сам по себе java PROGRAM
работает.Есть ли более простой способ сделать это?
Кроме того, другая моя java-программа требует внешних библиотек и работает нормально сама по себе.Но с cset shield
я получил NoClassDefFoundError
, что означает, что он не может найти библиотеки.Добавление аргумента classpath (-cp CLASSPATH
) привело к сообщению об ошибке "p" contains invalid characters: p
.
После опробования различных предложений и их перестановок я наткнулся на способ, который наполовину работает: cset shield --exec -- $(which java) -cp ./:<LIB_PATH>/DA_LIB.jar PROGRAM
,Но с этим я получаю UnsatisfiedLinkError: Library not found: DA_LIB