IntelliJ: Включая банки в артефакт - PullRequest
3 голосов
/ 19 мая 2010

Разработка на Mac с IntelliJ 9.0.2 Community Edition.

У меня есть программа, которая зависит от двух библиотек jar. Я понял, как заставить IntelliJ сделать мне банку с моим источником (с вкладкой Артефакт) и даже включить в нее две банки.

Однако, если я получу распечатку файла JAR, который он производит, он будет выглядеть так:

ком / Acme / MyClass1.class
ком / Acme / MyClass2.class
...
mylib1.jar
myLib2.jar

И, не удивительно, если я дважды щелкну файл jar, он получит ошибку NoClassDefFoundError при первой попытке доступа к классу в той или иной библиотеке jar.

Кажется, мне нужно сказать IntelliJ "встроить" библиотечные фляги - но эта опция меню всегда неактивна!

Кто-нибудь знает, как вставить баночки в артефакт банку?

Ответы [ 3 ]

2 голосов
/ 23 мая 2010

IDEA пока не поддерживает его, вы можете использовать интеграцию Ant для упаковки вашего jar-файла (либо распаковав все jar-файлы во временную папку, а затем упаковав выходные данные проекта и эту временную папку в один jar-файл, либо с помощью некоторого Antзадание типа jarjar ).

Если вы хотите, чтобы эта функция появилась в будущих версиях IDEA, проголосуйте за запрос .

0 голосов
/ 17 января 2011

Я буду использовать плагин Maven Assembly. Это просто и даст вам аккуратную маленькую флягу ..

0 голосов
/ 08 сентября 2010

Включение JAR-зависимостей в ваш JAR-файл должно позволить вашему коду успешно работать. Вероятно, у вас нет JAR-файлов на вашем пути к классам.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...