Создание файла JAR - не работает на других компьютерах - PullRequest
6 голосов
/ 13 февраля 2012

Я пытаюсь упаковать свою программу в файл JAR, чтобы ее можно было использовать на нескольких компьютерах.

Моя программа состоит из start.java, userinterface.java и writer.java.

Программа, написанная на Eclipse, отлично работает на моем компьютере.При экспорте он будет работать на моем компьютере, но на других компьютерах произойдет следующая ошибка:

"Could not find the main class: start. Program will exit".

Опять моя программа работает нормально на моем компьютере, когда я дважды щелкаю по нему.

Я попытался создать файл JAR через командную строку, и мой файл манифеста правильный.Что происходит?

Ответы [ 2 ]

5 голосов
/ 13 февраля 2012

Это очень странная ошибка, с которой я также столкнулся.

Предполагается, что вы используете JRE 1.7,Единственное исправление, которое я нашел к этой проблеме, было изменение JRE версии проекта с 1.7 на 1.6.

Редактировать: Я также сталкивался с этой ошибкой на компьютерахс JVM 7.

0 голосов
/ 13 февраля 2012

Я полагаю, это потому, что вы пытаетесь указать файл класса из пакета по умолчанию для атрибута Main-Class.JAR-файлы и пакеты по умолчанию не очень хорошо сочетаются.Я бы посоветовал поместить весь ваш проект в простой пакет (насколько я вижу из прикрепленного JAR-файла, вы используете только пакет по умолчанию).

Кроме того, попробуйте принять общие соглашения Java (трудно сказать, что такое класс, и сначала я подумал, что есть какая-то специфичная для пакета ошибка, т. Е. Используйте Start вместо start в качестве имени класса).

Другая распространенная проблема - эточто последняя строка файла MANIFEST.MF не интерпретируется, как указано в руководстве по Java :

Предупреждение:

Текстовый файл должен заканчиваться новой строкой или переводом каретки.Последняя строка не будет проанализирована должным образом, если она не заканчивается новой строкой или возвратом каретки.

...