LINUX.ORG.RU

Глупый вопрос по яве.

 


0

1

А именно, как запустить из командной строки eclipse проект. Из эклипса то он запускается, конечно. Но теперь я хочу чтобы его можно было запускать не из эклипса. Я понимаю конечно что нужно переходить на maven и так далее, но для программки грубо говоря резидентной на 200 строк все эти заморочки имхо черезчур. Вобщем вопрос звучит так: как мне проще всего запустить эклипс проект на яве(se) из комадной строки.

★★

Последнее исправление: mio (всего исправлений: 1)

???

Запустить ява приложение, это понятно. Запустить бинарник, это понятно. Но что значит запустить eclipse проект?

pathfinder ★★★★
()

Да также, как и любое Java-приложение. Eclipse можно вообще в расчет не брать. Скомпилировать с помощью javac, запустить при помощи java.

CARS ★★★★
()
Ответ на: ??? от pathfinder

Но что значит запустить eclipse проект?

В bin лежат class файлы, java MainClass что-то типа такого. Но так оно не работает, потому что использует сторонние jar файлы-библиотеки, плюс сам проект состоит из нескольких файлов.

mio ★★
() автор топика

Из консоли - maven, ant, sbt.

Maven - страдарт де-факто, напиши себе заготовку конфигов и копипасть их везде

Ant - для упоротых из прошлого

Sbt - по дефолту компиляет скалу, зато работает без конфига вообще, на ровном месте в каталоге с исходниками. Но чтобы вырубить Scala и начать строить запускаемые jar файлы прийдется все-таки пару строчек обеспечить

Еще есть Gradle для гомосексуалистов

vertexua ★★★★★
()
Последнее исправление: vertexua (всего исправлений: 2)
Ответ на: комментарий от mio

Все сторонние библиотеки указать в -classpath.

CARS ★★★★
()
Ответ на: комментарий от vertexua

Да похоже придется разобраться с мавеном, я как посмотрел что там xml - так он мне сразу не понравился

mio ★★
() автор топика

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

Поищи или погугли «Export Executable JAR in Eclipse». Там создаешь артефакт и оно тебе запакует все в Jar со всеми зависимостями.

Ну а потом java -jar myjar.jar

vertexua ★★★★★
()

Из Эклипса можно сделать экспорт в jar-ку. Пример вот тут: http://chevalry.livejournal.com/151884.html

Запустить прогу можно командой командой «java -jar main.jar». Для простого проекта самое оно.

Другое дело, что если в используется куча внешних библиотек, то их нужно или упаковать в единственный main.jar (получится этакий UberJar, это и должен сделать Эклипс), или же каждый раз добавлять их в команду запуска.

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

Так что если это нужно чисто для себя, для консольного запуска, то лучше воспользоваться maven'ом, про который написал vertexua. И библиотеки подтянет, и запустит все, как надо, и UberJar соберет при необходимости, да и эклипсный проект сгенерирует.

anonymous
()
Ответ на: комментарий от anonymous

А умников, вручную гоняющих javac, не слушай, только плохому научат.

anonymous
()

черезчур

X-(

как мне проще всего запустить эклипс проект на яве(se) из комадной строки

http://bit.ly/14fKHsC

hizel ★★★★★
()
Ответ на: комментарий от mio

если не нравится maven, запили простой makefile, что мешает?

EugeneBas ★★
()

плюcую анона! надо экспортировать в джар, и его потом можно запустить вручную, не из IDE.

aol ★★★★★
()
Последнее исправление: aol (всего исправлений: 1)
Ответ на: комментарий от mono

Я на них тоже. Когда узнал долго не мог понять чего это у гугла криокамера потекла

vertexua ★★★★★
()
Ответ на: комментарий от mono

А подробности можешь рассказать, как там, в среде андроид-девелоперов живется?

Потому что, по ощущениям, ant там сбоку припека. Создалась xml-ка при создании проекта из консоли, и все. Разработка и запуск все равно идут из IDE-шки, а проект для нее может сгенерировать из sbt. И почти наверняка maven тоже, но я этого не проверял.

anonymous
()
Ответ на: комментарий от anonymous

Спасибо экспорт executable jar помог.

mio ★★
() автор топика
Ответ на: комментарий от mono

И немым вопросом «почему так быстро летит время?», да?

cdshines ★★★★★
()
Ответ на: комментарий от anonymous

Потому что, по ощущениям, ant там сбоку припека. Создалась xml-ка при создании проекта из консоли, и все. Разработка и запуск все равно идут из IDE-шки, а проект для нее может сгенерировать из sbt. И почти наверняка maven тоже, но я этого не проверял.

Да, ты прав.

mono ★★★★★
()
Ответ на: комментарий от mono

Андроидщики смотрят на тебя с презрением и непониманием.

Это не презрение, это из-за анального зонда такое выражение лица.

anonymous
()
Ответ на: комментарий от windofchange

Анонимусы не нужны. А вот ответы бы пригодились.

anonymous
()
Ответ на: комментарий от mio

я как посмотрел что там xml - так он мне сразу не понравился

Именно поэтому все переходят на gradle. Особенно любители Груви.

aidan ★★★★
()
Ответ на: комментарий от vertexua

Maven - страдарт де-факто

страдарт — это существительное, образованное от глагола «страдать»?

www_linux_org_ru ★★★★★
()
Ответ на: комментарий от stevejobs

sbt - ivy+быстрая компиляция+уроды разработчики

ivy+maven - не понятно что, потому что maven не использует ivy, а качает все сам. Ivy отдельная разработка для билдсистемописателей.

Ant - низкоуровневая система сборки. Причем даже не на уровне Makefile, а на уровне bash в xml. Что может быть ущербнее?

vertexua ★★★★★
()
Последнее исправление: vertexua (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.