У меня есть сценарий оболочки, который вызывает файл.jar. Следующей является команда:
java -Xms256m -Xmx512m -cp (path)/VxCryptor.jar
com.datalog.security.PrepareImportFile $SOURCE_FILE $TARGET_FILE -f
(path)/$ENCRYPTION_KEY
Это дает следующую ошибку:
Ошибка: не удалось найти или загрузить основной класс com.datalog.security.PrepareImportFile
Можете ли вы рассказать мне, что делает эта команда? и о чем эта ошибка?
Эта команда запускает класс java, расположенный в файле jar с заданными параметрами.
-Xms256m / -Xmx512m
: Минимальные/максимальные размеры кучи памяти доступны для вашего JVM, здесь 256 м /512 м.
-cp x/y/z/VxCryptor.jar
: -cp x/y/z/VxCryptor.jar
к классам ваших классов/файлов jar.
com.datalog.security.PrepareImportFile
: Полное имя класса, содержащего main(String[] args)
метод, который вы хотите запустить.
Остальные параметры передаются в com.datalog.security.PrepareImportFile.main
.
Ошибка говорит вам, что такой класс не может быть найден в данной банке. Тем не менее, обратите внимание, что java будет говорить то же самое, если такой jar не существует в данном пути к классам.
Проверьте:
jar -tf VxCryptor.jar
для отображения/проверки содержимого вашего файла jar.
jar -tf VxCryptor.jar
для отображения содержимого вашего файла jar? Таким образом, вы увидите, правильно ли указано ваше полное имя пакета.