затмение, Java и запуск проекта из терминала - PullRequest
1 голос
/ 23 декабря 2011

Я привык писать java в eclipse и использовать его для импорта JAR-файлов, настройки рабочего пространства и т. Д. Однако, когда я хочу развернуть проект на моем сервере и вызвать его из скрипта bash, например java Main arg1 arg2 что-то не так Пиши я получаю:

java.lang.ClassNotFoundException

мой путь к классу установлен неправильно? что затмение делает за кулисами? когда я

echo $CLASSPATH

Я всегда получаю пустую строку. Нижеследующее (выполняется из папки bin) также не работает:

java -cp "~/Code/Java/SQL/MySQLAccess/bin;/usr/bin/java;/Users/Me/Code/Java/SQL/MySQLTest/mysql-connector-java-5.1.18-bin.jar" Main arg1 arg2 ... arg7

это дает мне java.lang.ClassNotFoundException: Main ошибку

Ответы [ 2 ]

3 голосов
/ 23 декабря 2011

ваш путь к классу указан неверно, вы можете использовать команду java -classpath path_for_java javafile argumnets

Что касается eclipse, вы можете перейти к проектам-> properties-> путь сборки java-> библиотеки и узнать, откуда eclipse ссылается на библиотеки java.

2 голосов
/ 23 декабря 2011

Если вы планируете перемещать это и развертывать на потенциально разных серверах, посмотрите на экспорт вашего проекта в качестве jar.Вы можете включить jar-файлы sql в свой jar-файл, и ваш вызов из скрипта будет выглядеть так:

java -jar Main.jar

В Eclipse вы можете перейти в File-> Export, затем выбрать 'jar' из меню и следоватьшаги.

Ваш манифест будет выглядеть примерно так:

Main-Class: Main
Class-Path: mysql-connector-java-5.1.18-bin.jar
...