Программа перестала работать после создания файла .jar с Netbeans - PullRequest
0 голосов
/ 13 июля 2010

Я сделал простое приложение Swing с некоторым подключением к базе данных, используя Notepad ++ и выполняя его из командной строки.Это выполнялось отлично.

Затем я скопировал весь код в Netbeans и попытался собрать его в основной проект, чтобы упаковать мое приложение в файл .jar.

Файл .jar был успешно создан, но когда я попытался запустить его, он не работал должным образом.Например, в моем приложении была кнопка, отображающая все записи, присутствующие в базе данных.Это работало, когда я выполнялся из командной строки, но когда был выполнен файл .jar, ответа не было.

Ответы [ 2 ]

2 голосов
/ 13 июля 2010

Трудно сказать, не видя некоторый код или следы стека ошибок / исключений.Наиболее типичной причиной таких проблем являются неполные пути к классам.Возможно, ваш класс драйвера базы данных отсутствует в classpath.

Некоторые вещи, которые вы можете проверить:

  • Есть ли какие-то ошибки?
  • Является ли исполняемый файл jar?Если да - это тот случай, когда вы запускаете приложение с чем-то вроде java -jar path/to/myjar.jar - в манифесте jar-файлов должен быть указан classpath * , любое значение -cp просто игнорируется.

Глядя на ваш последний комментарий, я почти уверен, что это проблема пути к классам.Драйвер базы данных обычно находится в другом файле jar, и если запись classpath в файле manifest.mf пуста, драйвер не может быть загружен.Это должно привести к исключению, но, возможно, это где-то перехватывается.

Решение # 1 - отредактируйте файл manifest.mf и добавьте все необходимые библиотеки в соответствии с этим учебником :

Class-Path: jar1-name jar2-name directory-name/jar3-name

Решение № 2 - не запускайте приложение с опцией -jar, а используйте стандартный способ:

java -cp yourLib.jar;database-driver.jar your.application.Main

(все записи библиотеки должны быть даны справильный относительный или абсолютный путь к файлу)

0 голосов
/ 24 сентября 2013

просто скопируйте драйвер базы данных в C: \ Program Files \ Java \ jre7 \ lib \ ext и запустите файл jar.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...