NetBeans: принудительно статически компилировать внешний класс в JAR? - PullRequest
1 голос
/ 21 июня 2010

У меня есть проект NetBeans, который опирается на один определенный класс Java в другом проекте.Прямо сейчас, когда NetBeans компилирует проект, он только добавляет ссылку на другой класс Java, что приводит к NoClassDefFoundError, поскольку внешний класс отсутствует в JAR.

Как я могу заставить NetBeans компилироватьвнешний файл в JAR при сборке, если не считать его копирование и вставку поверх?

Ответы [ 2 ]

1 голос
/ 21 июня 2010

Я так понимаю, вы пытаетесь создать то, что обычно называют "толстым JAR-файлом";т.е. файл JAR, который содержит все необходимые классы для вашего приложения.

Попробуйте рецепт в этого сообщения на форуме .

Другой альтернативой может быть добавление в файл Ant buld.xml что-то вроде следующего.

<target name="-post-jar">
   <jar update="true" destfile="${dist.jar}">
     <zipfileset src="${javac.classpath}"/>
   </jar>
</target>
0 голосов
/ 21 июня 2010

Если он основан на Maven, просто используйте задачу ant, чтобы скопировать класс в целевой объект / классы в соответствующей фазе (я полагаю, compile-sources или что-то подобное - что-то до test).

Если этоНа основе Ant вам нужно будет взломать скрипты сборки Ant в NetBeans, которые являются расширяемыми для каждого проекта.

Кстати, стандартный способ - сделать «другой проект» зависимым от вашего проекта.Для этого класса могут потребоваться другие классы из этого проекта ... и т. Д.

Я также мог бы рекомендовать JDGUI декомпилировать этот проект и выбрать нужные вам классы.http://java.decompiler.free.fr/?q=jdgui

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