Ответ 1
Отъезд Apache Ant
Можно использовать Ant для автоматических сборок с помощью eclipse, здесь, как
У меня есть проект Eclipse, где я хочу, чтобы мой проект Java был встроен в JAR автоматически. Я знаю, что у меня есть возможность экспортировать проект в JAR; если я сделаю правый щелчок; но я действительно ищу, что, подобно Eclipse, автоматически создает файлы проекта .class
и помещает их в целевую папку; он также должен автоматически создать JAR и скопировать последний JAR в определенном месте.
Есть ли возможность настроить Eclipse таким образом, чтобы автоматически создавать JAR?
Просто, чтобы было ясно для парней, достаточно терпеливых, чтобы ответить на мой вопрос; Я не рассматриваю ANT как решение; как я уже использую его, но то, что мне бы хотелось, это то, что инициируется автоматически либо с помощью триггера, основанного на времени, либо непосредственно с изменением.
Отъезд Apache Ant
Можно использовать Ant для автоматических сборок с помощью eclipse, здесь, как
Вам нужен файл .jardesc
. Они не запускаются автоматически, но в течение 2 кликов.
Export > Java > JAR file
Next
.jardesc
Теперь вам нужно всего лишь щелкнуть правой кнопкой мыши по файлу .jardesc
и выбрать Create JAR
и экспортировать его в том же месте.
Создайте файл 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.
Шаг 2 Щелкните правой кнопкой мыши на корневом каталоге node в проекте. - Выберите Свойства - Выбор строителей - Выберите Новый - Выберите Ant Сборка - На вкладке Главная заполните путь к файлу build.xml в папке bin.
Проверьте вывод
Окно вывода 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 и @betlistastrong >
@yeoman Я думаю, что правильный include будет /.class, а не *.class, поскольку большинство люди используют пакеты и, следовательно, рекурсивный поиск файлов классов делает больше смысла, чем плоское включение
@betlista Я бы посоветовал не иметь build.xml в папке src
Это возможно, определяя пользовательский Builder в eclipse (см. ссылку в ответе Питера). Однако, если ваш проект не очень мал, это может привести к замедлению вашего рабочего пространства неприемлемо. Autobuild для файлов классов происходит постепенно, то есть только те классы, на которые влияет изменение, перекомпилируются, но файл JAR должен быть полностью восстановлен и скопирован при каждом сохранении изменений.
Что касается ответа Питера и дополнения Micheal, вы можете найти Как автоматически генерировать файл .jar в проекте Java Eclipse. Поскольку даже у вас есть файл "*.jardesc" в вашем проекте, вы должны запустить его вручную. Это может немного охладить ваш "затмение затмения".
Используя вышеприведенный ответ 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 файлы во всех подкаталогах.)
Создание пусковой установки компоновщика является проблемой, поскольку 2 проекта не могут иметь одинаковое имя сборки внешнего инструмента. Каждое имя должно быть уникальным. В настоящее время я столкнулся с этой проблемой, чтобы автоматизировать сборку и скопировать JAR во внешнее местоположение.
Я использую IBM Zip Builder, но это всего лишь помощь, но не реальная.
Люди могут попробовать использовать плагин IBM ZIP Creation. http://www.ibm.com/developerworks/websphere/library/techarticles/0112_deboer/deboer2.html#download