Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Java: Общие вопросы > Could Not find the main class |
Автор: ArsNov 21.12.2011, 12:45 | ||||||||
Сделал в эклипсе жарник. Хочу запустить его, ввожу:
Получаю:
Если запустить двойным кликом выдает:
В MANIFEST.MF прописано:
JRE 1.4.2. Где допустил ошибку. Погуглил, везде все сводится к тому что не прописан main-class или отсутствуют нужные данные в classpath. Но я все прописал, а ошибка не исчезает. Прикрепил этот жарник к теме. |
Автор: mstalker26 21.12.2011, 13:59 |
jar генерировали из эклипса с помощью export... ? Манифест как-то чудно вглядит, если можете выложите скриншоты того, как делали (каждое окно, когда экспортируете) |
Автор: Samotnik 21.12.2011, 14:04 |
ArsNov, в конце файла должна быть пустая строка. Есть? |
Автор: ArsNov 21.12.2011, 15:11 | ||||
Точно, с помощью экспорта. Манифест правил вручную, после экспорта он получился такой:
Естественно, он не завелся, так как отсутствуют пути к используемым жаркам. Пришлось добавить класпас через notepad. Перенос строки в конце файла присутствует. Прикрепил прописанные в класспасе жарники, можете проверить запустится ли у Вас? Спасибо за интерес к проблеме ![]() |
Автор: mstalker26 21.12.2011, 16:08 | ||
Я предполагал, что Вы правили манифест ![]() Попробуйте так. 1) Убедитесь что Ваши библиотеки прописаны в свойствах проекта ![]() 2) Export... (теперь важно) -> Runnable JAR file (не забудьте указать Copy required libraries into a sub-folder next to the generated jar). Хотя можете выбрать первый пункт (тогда библиотеки будут запакованы в Ваш jar). ![]() И все. Рядом с Вашим jar-ом будет папка {имя-jar}_lib, в ней будут находится нужные библиотеки, а в самом jar-е будет правильный Class-Path. P.S. для факультатива http://skipy.ru/technics/likbez.html#hello ![]() P.P.S. если что не получается, пишите. |
Автор: ArsNov 21.12.2011, 16:50 | ||||
Спасибо! Видимо придется почитать и вникнуть ![]() У меня отсутствует пункт Runnable JAR file (см. скриншот 1.) Я делал так: 1. ![]() 2. ![]() 3. ![]() 4. ![]() 5. ![]() Сейчас для проверки сделал проект с одним единственным классом и без подключения внешних библиотек. Сделал экспорт - все заработало, как только прописал библиотеки в манифесте, как в моем первом сообщении- получил ошибку. По вашей ссылочке вычитал:
Судя по этим словам ошибка моя в том, что я прописал абсолютный путь или как это понимать? Можете прислать примерчик манифеста который сгенерировал ваш эклипс? Пока попробую запихнуть руками все либы в архив и пропишу относительный путь )) Добавлено через 8 минут и 50 секунд Не, не понял. Запихнул в архив папку с библиотеками, в манифесте поправил:
Теперь при запуске java -jar twi.jar: Exception in thread "main" java.lang.NoClassDefFoundError: twitter4j/UserStreamListener По двойному клику - не могу найти мейн класс. |
Автор: ArsNov 22.12.2011, 08:37 |
Разобрался, заработало. Положил библиотеки в папку lib, которая находится на одном уровне с исполняемым jar файлом. Прописал в MANIFEST.MF: Class-Path: lib/twitter4j-async-2.2.5.jar ..... Спасибо за помощь! ![]() |