java -cp для проблемы с Windows - PullRequest
2 голосов
/ 11 мая 2011

Может кто-нибудь сказать мне, почему эта команда java в файле .bat не запускает мою программу java на WinXP? Все мои jar-файлы находятся в папке с именем lib, а мои файлы классов - в папке пакета mypackage.

java -cp ".;.\lib\poi-3.7-20101029.jar;.\lib\jsr173_1.0_api.jar;..." mypackage.MyClassWithMain

Я пробовал все виды вещей безрезультатно. Я получаю ошибку ClassNotFound, как только программа пытается использовать некоторые классы в jar-файлах. Итак, я думаю, что-то не так с моей опцией -cp. Это находит мой главный ().

Я хочу дать эту программу кому-то, кто ничего не знает о компьютерах, поэтому я хочу, чтобы они могли дважды щелкнуть файл .bat и перейти.

Я написал все на Mac без особых проблем.

Бьюсь об заклад, модератор собирается ударить меня по этому вопросу, но я много раз искал ответ на этот вопрос.

Спасибо тебе! John

Извините, мне следовало ввести всю командную строку:

java -cp ".;. \ Libs \ jsr173_1.0_api.jar;. \ Libs \ poi-3.7-20101029.jar;. \ Libs \ poi-ooxml-3.7-20101029.jar;. \ Libs \ poi -ooxml-схемы-3.7-20101029.jar;. \ ЛИЭС \ resolver.jar;. \ ЛИЭС \ xbean.jar;. \ ЛИЭС \ xbean_xpath.jar;. \ ЛИЭС \ XMLBeans-qname.jar;. \ ЛИЭС \ xmlpublic .jar "excelsifter.ExcelSifterController

Это все в одной строке. Я попытался / вместо \, но это не сработало. Все, что я мог найти в этом, указывает, что для окон вы должны использовать обратную косую черту. Все зависимости здесь, насколько я знаю. По крайней мере, мой Mac не жалуется, когда я использую по существу одну и ту же команду.

В моем каталоге, содержащем мой файл .bat, содержится пакет excelsifter (папка с именем excelsifter) и папка libs со всеми jar-файлами в ней. Спасибо, Джон

Ответы [ 2 ]

0 голосов
/ 11 мая 2011

Ваша начальная строка выглядит нормально для меня, попробуйте проверить, есть ли другие зависимости в библиотеках, которые вы используете, как упомянуто @Said. Лучший способ - найти класс, который не может найти ваш java, возможно, вы найдете объявление в какой-то другой библиотеке, которую вы не включили в ваш путь к классам.

0 голосов
/ 11 мая 2011

От каких библиотек зависит POI? Мне один poi.jar кажется слишком голым ... как называется класс, который не найден? Попробуйте найти его в других библиотеках.

...