#intellij-idea #ant
#intellij-idea #ant
Вопрос:
Я использую IntelliJ IDEA CE 2020.3 для создания простого файла JAR. После сборки я хотел бы скопировать созданный JAR в каталог библиотеки.
Я использую плагин Ant, который поставляется в комплекте с IDE. Кажется, я не могу найти базовые файлы сборки / управления Ant, которые заставляют все это работать. Я предполагаю, что Ant использует XML-файлы, которые являются частью настроек проекта IDE, но это неясно.
В любом случае, есть ли способ добавить шаг «копировать», о котором я упоминал выше? Должен ли я либо использовать встроенный Ant, либо полностью взять его на себя? Могу ли я изменить значение по умолчанию, которое поставляется с IDE?
Комментарии:
1. Разве вы не видите
build.xml
в проекте? Я бы выбрал решение ant, и вы можете вызвать любую задачу ant из IDE. Вы также можете добавить пользовательский этап сборки в IDE и настроить внешний инструмент, но он будет работать только в IDE.2. Когда я создаю проект, я просто выбираю стандартное Java-приложение (например, против Maven). Там нет никакого build.xml где угодно. Стандартная сборка, похоже, использует какую-то встроенную конфигурацию Ant. Итак, я хотел бы либо настроить / изменить встроенный, каким-то образом дополнить его, либо добавить пользовательский шаг сборки в IDE. Я не смог найти никакого способа добавить пользовательский шаг сборки, который не был бы связан с Ant. Любые указатели приветствуются. Спасибо!
3. Я думаю, что стандартный java-проект вообще не использует ant. IDE просто выполняет команды для компиляции и, возможно, упаковки классов в jar.
4. Я думаю, что он использует Ant, потому что окно сборки сообщает о выводе Ant. Я только что запустил «стандартный» свежий IDE-проект, и вот несколько строк, которые были выведены… Выполнение задач предварительной компиляции… Загрузка конфигурации Ant… Выполнение задач Ant… Выполнение задач «до»
Ответ №1:
Все,
Итак, после некоторых экспериментов я обнаружил, что если я вручную создам build.xml файл, я могу выполнить шаги после сборки. Для моего примера здесь я создал следующее, простое build.xml и добавил его в каталог проекта IntelliJ верхнего уровня (где находится файл .iml).:
build.xml (созданный вручную)
<project name="mylib" default="copy-file">
<target name="copy-file">
<copy file="out/artifacts/mylib_JAR/mylib.jar" tofile = "./mylib.jar" />
</target>
</project>
Обратите внимание, что каталоги относятся к каталогу проекта.
IntelliJ IDEA позволила мне добавить задачу копирования файлов для увеличения встроенной сборки по умолчанию. Чтобы настроить свои задачи через IDE, откройте окно инструментов Ant с помощью пункта главного меню View / Tool Windows / Ant.
Я надеюсь, что это кому-то поможет!