Пакетное создание файла для запуска исполняемого файла JAR с файлом JAR внешней библиотеки

Я разработал простой Java-проект и хочу запустить этот проект, используя командный файл. как включить внешний jar-файл в пакетный файл, чтобы успешно запустить проект java.

Структура проекта приведена ниже,

Нажмите здесь, чтобы найти снимок экрана со структурой проекта

файл lanch.bat содержит

java -Xms512M -Xmx512M -jar selflearn.jar -o true
PAUSE

как включить файл POdetail_for_tests.txt и папку libs в качестве ссылки во время выполнения программы.

при попытке запустить проект с вышеуказанным командным файлом возникает следующая ошибка

F:\java>java -Xms512M -Xmx512M -jar selflearn.jar -o true
Exception in thread "main" java.lang.NoClassDefFoundError: 
org/apache/poi/xssf/usermodel/XSSFWorkbook
at selflearn.txtFileToCSV.csvToXLSX(txtFileToCSV.java:57)
at selflearn.txtFileToCSV.main(txtFileToCSV.java:48)
Caused by: java.lang.ClassNotFoundException: 
org.apache.poi.xssf.usermodel.XSSFWorkbook
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
... 2 more

F:\java>PAUSE
Press any key to continue . . .

1 ответ

Есть опция -cp (classpath) для включения зависимых jar-файлов:

F:\java>java -Xms512M -Xmx512M -cp "libs/*" -jar selflearn.jar -o true

Согласно скриншоту структуры проекта, он должен быть в состоянии найти файл POdetail_for_tests.txt.

Другие вопросы по тегам