Запуск исполняемого jar-файла


Файл calculator.jar исполняемым не является. А вот helloworld.jar можно запустить.
Если архив был создан первыми двумя способами, то рядом с ним в одном каталоге должна находится папка lib с файлом calculator.jar. Такие ограничения из-за того, что в манифесте в class-path указан путь относительно исполняемого файла.

cd Calculator ls ../HelloWorld/lib calculator.jar java -jar ../HelloWorld/helloworld.jar

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

java -jar ../HelloWorld/helloworld.jar

Как быть с приложениями JavaEE


Аналогично. Только библиотеки для компиляции нужно брать у сервера приложений, который используется. Если я использую JBoss, то для компиляции сервлета мне нужно будет выполнить примерно следующее

javac -classpath path/to/jboss/common/lib/jboss-servlet*.jar -d ./classes src/com/qwertovsky/app/servlets/MenuSt.java


Структура архива JavaEE-приложения должна соответствовать определенному формату. Например

my.ear `---META-INF | `---manifest.mf `---lib | `---mylib.jar `---my.war | `---META-INF | | `---manifest.mf | `---WEB-INF | | `---lib | | | `---myweblib.jar | | `---classes | | | `---com | | | `---... | | `---web.xml | `---index.html | `---<остальное веб-содержимое (страницы, изображения)> `---myejb.jar


Способы запуска приложения на самом сервере с помощью командной строки для каждого сервера различны.

Надеюсь, данная статья станет для кого-нибудь шпаргалкой для работы с Java в командной строке. Данные навыки помогут понять содержание и смысл Ant-скриптов и ответить на собеседовании на более каверзные вопросы, чем «Какая IDE Вам больше нравится?».


Ещё почитать


1. Elliotte Rusty Harold. «Рекомендации по управлению classpath в UNIX и Mac OS X»
2. Elliotte Rusty Harold. «Рекомендации по управлению classpath в Windows»
3. Евгений Матюшкин aka Skipy. «Ликбез»
4. Lesson: Packaging Programs in JAR Files
5. Brian Goetz. «Теория и практика Java: Мне нужно задокументировать ЭТО?»
6. Евгений Матюшкин aka Skipy. «Создание собственных тегов javadoc»
7. Создание и использование архивов Java
8. Sun Java Signing
9. javac — Java programming language compiler
10. java — the Java application launcher
11. jdb — The Java Debugger
12. javap — The Java Class File Disassembler
13. javadoc — The Java API Documentation Generator
14. jarsigner — JAR Signing and Verification Tool
15. jar — The Java Archive Tool
16. keytool — Key and Certificate Management Tool

· java

· , командная строка

· , консоль

· , разработка

+67

29 июля 2011, 14:00

Qwertovsky 18,0

Комментарии (22)

+3

Запуск исполняемого jar-файла - student2.ru cypok29 июля 2011, 14:43#

Сейчас уже никто не создает программы в консоли.

Кажется я — никто :)

Запуск исполняемого jar-файла - student2.ru t_rex29 июля 2011, 14:58#↑

никто не создает


Вы создаете? Значит под описание не подходите ;)

Запуск исполняемого jar-файла - student2.ru ramilexe29 июля 2011, 15:06#

Спасибо за статью! Как раз собираюсь переключиться плавно с пхп на яву и не охота писать хеллоу ворлд в монструозном нетбинсе, не понимаю как оно работает внутри.
Начинать изучение с командной строки это самое оптимальное, имхо.

+2

Запуск исполняемого jar-файла - student2.ru KilgortTraut29 июля 2011, 15:18#↑

Мирончика лекции посмотри, там хоть и долго, но довольно доходчиво объясняется, как организованы пакеты Java.

Запуск исполняемого jar-файла - student2.ru mr_locke30 июля 2011, 09:24#↑

А ссылку на лекцию можно? Спасибо.

+1

Запуск исполняемого jar-файла - student2.ru gshock29 июля 2011, 19:41#↑

Кроме нетбинса есть еще Eclipse. И скажите, почему много php-разработчиков, которых я знаю, любят пользоваться именно нетбинсом притом что бооольшинство java-разработчиков им не пользуются? Вопрос из моего жизненного наблюдения

+4

Запуск исполняемого jar-файла - student2.ru stas_agarkov30 июля 2011, 11:24#↑

Потому что для Java есть Intellij IDEA.

Запуск исполняемого jar-файла - student2.ru FeliX133729 июля 2011, 15:07#

Спасибо. В избранное, однозначно.

Запуск исполняемого jar-файла - student2.ru iPavel29 июля 2011, 15:31#

Благодарствую

+2

Запуск исполняемого jar-файла - student2.ru kiRach29 июля 2011, 16:04#

Отличная статья! Old school жив:)

+1

Запуск исполняемого jar-файла - student2.ru calx29 июля 2011, 16:11#

Шикарная статья. Автор, пишите, пожалуйста, ещё.

Запуск исполняемого jar-файла - student2.ru netslow29 июля 2011, 17:02#

Очень хорошо. Вы молодец. Много полезной и структурированной информации

+9

Запуск исполняемого jar-файла - student2.ru gribozavr29 июля 2011, 17:40#

> Сейчас уже никто не создает программы в консоли.

Как-то меня попросили помочь одному человеку с программированием на Си. Спрашиваю: какой компилятор используете? — Что? — Ну, чем компилируете? — F8!

С тех пор я считаю, что пока человек не разобрался с тулчейном в консоли, в IDE пускать его ещё рано.

–2

Запуск исполняемого jar-файла - student2.ru Foror29 июля 2011, 18:53#

Интересно, но блин как всё это сложно, столько нужно делать телодвижений, чтобы банально собрать и запустить проект. И с популярными IDE теже проблемы. В иной раз, в этих монстрах, страшно вынести классы в отдельную библиотеку…

Запуск исполняемого jar-файла - student2.ru Artm31 июля 2011, 22:16#↑

Непонятные минуса у человека. Что он не так сказал?

+6

Запуск исполняемого jar-файла - student2.ru muromec29 июля 2011, 19:30#

теперь осталось только сделать сборку через make и вас выгонят из секты.

Запуск исполняемого jar-файла - student2.ru zokotuhaFly31 июля 2011, 20:58#↑

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

Запуск исполняемого jar-файла - student2.ru iZENfire29 июля 2011, 23:05#

Без воды. Уважаю.

Запуск исполняемого jar-файла - student2.ru uglock30 июля 2011, 14:44#

Вот и выросло поколение программистов, которые не могут собрать программу на C/Java/.Net/etc без IDE. Мрак.

Запуск исполняемого jar-файла - student2.ru Artm31 июля 2011, 22:15#↑

А дрова рубить умеют? А в лесу прожить 3 дня «как есть»? А Рыбу ловить? Вот и выросло поколение мегаполис-жителей.
Что удивляемся, для того проги и пишут. Это называется прогресс.

Запуск исполняемого jar-файла - student2.ru schaan28 декабря 2011, 14:21#↑

Поддерживаю.
Хотя знать основы рубки дров и запуска джавы из консоли пригодятся.

Запуск исполняемого jar-файла - student2.ru backinblack3 августа 2011, 10:34#

Спасибо огромное! Очень полезная статья.
И за полезные линки отдельное спасибо.

Наши рекомендации