Построить проект в JAR автоматически в Eclipse

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

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

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

Ответ 1

Отъезд Apache Ant

Можно использовать Ant для автоматических сборок с помощью eclipse, здесь, как

Ответ 2

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

  • Щелкните правой кнопкой мыши на своем проекте
  • Выберите Export > Java > JAR file
  • Выберите входящие файлы и введите имя JAR, затем нажмите Next
  • Отметьте "Сохранить описание этого JAR в рабочей области" и выберите имя для нового файла .jardesc

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

Ответ 3

Создайте файл 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>

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

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

Ant builder configurationBuild 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

EDIT: некоторые полезные комментарии от @yeoman и @betlista​​strong >

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

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

Ответ 4

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

Ответ 6

Используя вышеприведенный ответ 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 файлы во всех подкаталогах.)

Ответ 7

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

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

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