Построить проект в JAR автоматически в Eclipse - PullRequest
166 голосов
/ 30 июня 2009

У меня есть проект Eclipse, в котором я хочу, чтобы мой проект Java был встроен в JAR автоматически. Я знаю, что у меня есть возможность экспортировать проект в JAR; если я сделаю правый клик; но что я действительно ищу, так это то, что Eclipse автоматически создает файлы проекта .class и помещает их в целевую папку; он также должен автоматически создать JAR-файл и скопировать последний JAR-файл в определенное или определенное место.

Есть ли возможность настроить Eclipse таким образом, чтобы автоматически создавать JAR-файлы?

Просто, чтобы дать понять парням, достаточно терпеливым, чтобы ответить на мой вопрос; Я не рассматриваю ANT как решение; как я уже использую, но то, что я хотел бы, это то, что запускается автоматически либо с помощью триггера, основанного на времени, или немедленной сборки с изменением.

Ответы [ 7 ]

285 голосов
/ 01 июля 2009

Вы хотите файл .jardesc. Они не запускаются автоматически, но в течение 2 кликов.

  1. Щелкните правой кнопкой мыши по вашему проекту
  2. Выберите Export > Java > JAR file
  3. Выберите включенные файлы и имя выходного JAR, затем нажмите Next
  4. Установите флажок «Сохранить описание этого JAR-файла в рабочей области» и выберите имя для нового .jardesc файла

Теперь все, что вам нужно сделать, это щелкнуть правой кнопкой мыши на файле .jardesc и выбрать Create JAR, и он будет экспортирован в то же место.

69 голосов
/ 30 августа 2012

Создайте файл Ant и скажите Eclipse, чтобы он создавался. Есть только два шага, и каждый из них прост с пошаговыми инструкциями ниже.


Шаг 1 Создайте файл build.xml и добавьте в проводник пакетов:

<?xml version="1.0" ?>
<!-- Configuration of the Ant build system to generate a Jar file --> 
<project name="TestMain" default="CreateJar">
  <target name="CreateJar" description="Create Jar file">
        <jar jarfile="Test.jar" basedir="." includes="*.class" />
  </target>
</project>

Затмение должно выглядеть примерно так, как на скриншоте ниже. Обратите внимание на значок Ant в build.xml. Build.xml in Eclipse Project

Шаг 2 Щелкните правой кнопкой мыши по корневому узлу в проекте. - Выберите Свойства - Выберите строителей - Выберите Новый - Выберите Ant Build - На вкладке Главная введите путь к файлу build.xml в папке bin .

Ant builder configuration Build step - Targets Tab

Проверьте вывод

В окне вывода Eclipse (с именем Console) после сборки должно отображаться следующее:

Buildfile: /home/<user>/src/Test/build.xml

CreateJar:
         [jar] Building jar: /home/<user>/src/Test/Test.jar
BUILD SUCCESSFUL
Total time: 152 milliseconds

РЕДАКТИРОВАТЬ: Некоторые полезные комментарии @yeoman и @ betlista

@ yeoman Я думаю, правильное включение будет / .class, а не * .class, как большинство люди используют пакеты и, следовательно, рекурсивный поиск файлов классов делает больше смысла, чем плоское включение

@ betlista Я бы порекомендовал не иметь build.xml в папке src

27 голосов
/ 30 июня 2009

Выезд Apache Ant

Возможно использовать Ant для автоматической сборки с затмением, вот как

13 голосов
/ 30 июня 2009

Это возможно путем определения собственного Строителя в затмении (см. Ссылку в ответе Питера). Однако, если ваш проект не очень маленький, это может замедлить ваше рабочее пространство недопустимо. Автосборка для файлов классов происходит постепенно, то есть перекомпилируются только те классы, на которые повлияло изменение, но файл JAR необходимо будет перестраивать и полностью копировать при каждом сохранении изменения.

4 голосов
/ 30 января 2012

Что касается ответа Питера и дополнения Мишеля к нему, вы можете найти Как автоматически сгенерировать файл .jar в Java-проекте Eclipse . Поскольку даже у вас есть файл "* .jardesc" в вашем проекте, вы должны запустить его вручную. Это может немного остудить вашу «затмеваемую щелчок».

1 голос
/ 30 октября 2015

Используя Thomas Bratt ответ выше, просто убедитесь, что ваш build.xml настроен правильно:

<?xml version="1.0" ?>
<!-- Configuration of the Ant build system to generate a Jar file --> 
<project name="TestMain" default="CreateJar">
  <target name="CreateJar" description="Create Jar file">
        <jar jarfile="Test.jar" basedir="bin/" includes="**/*.class" />
  </target>
</project>

(Обратите внимание на двойную звездочку - сборка будет искать файлы .class во всех подкаталогах.)

0 голосов
/ 15 февраля 2016

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

Я использую Zip Builder от IBM, но это всего лишь помощь, но я не справляюсь с реальными задачами.

Люди могут попробовать использовать плагин IBM ZIP Creation. http://www.ibm.com/developerworks/websphere/library/techarticles/0112_deboer/deboer2.html#download

...