Создать файл jar из командной строки
у меня есть следующая иерархия каталогов :
SigarTest
src
SigarTest
.java files
bin
SigarTest
.class files
здесь SigarTest-это имя пакета. Корневая папка находится в папке bin jdk. Оттуда я запускаю следующую команду, чтобы создать файл jar моего проекта -
./jar cfe temp.jar SigarTest.SigarMain SigarTest/bin/ tools.jar sigar.jar mongo-2.7.3.jar
где инструменты.банку, монго-2.7.3.фляга и сигар.jar необходимы и находятся в той же папке, что и корневой каталог (папка bin jdk). Однако, запустив его, я получаю
ClassNotFoundException : SigarTest.SigarMain
что я делаю не так ?
1 ответов
использовать -C
dir опции, который
временно изменяет каталоги (
cd
dir) во время исполненияjar
команда при обработке следующего inputfiles:$ rm -rf temp.jar $ jar cfe temp.jar SigarTest.SigarMain -C SigarTest/bin/ . tools.jar sigar.jar mongo-2.7.3.jar $ jar tf temp.jar META-INF/ META-INF/MANIFEST.MF SigarTest/ SigarTest/SigarMain.class tools.jar sigar.jar mongo-2.7.3.jar $ java -jar temp.jar
SigarMain
находится в правильном пакете и выполняет temp.jar не бросаетClassNotFoundException
.