[英]NetBeans: Force external class to be statically compiled into JAR?
我有一個NetBeans項目,該項目依賴於另一個項目中的一個特定Java類。 現在,當NetBeans編譯項目時,它僅添加對另一個Java類的引用,這將導致NoClassDefFoundError,因為外部類不在JAR中。
在構建時,如何強制NetBeans將外部文件編譯到JAR中,而無需復制和粘貼呢?
我認為您正在嘗試創建通常被稱為“胖JAR文件”的文件; 即一個JAR文件,其中包含應用程序的所有必需類。
在此論壇中嘗試食譜。
另一種選擇是將以下內容添加到您的Ant buld.xml
文件中。
<target name="-post-jar">
<jar update="true" destfile="${dist.jar}">
<zipfileset src="${javac.classpath}"/>
</jar>
</target>
如果基於Maven,則只需使用ant任務即可在適當的階段將類復制到您的目標/類中(我猜是compile-sources或類似的東西- test
之前)。
如果是基於Ant的,則必須破解NetBeans的ant構建腳本,該腳本可按項目擴展。
順便說一句,標准方法是使“另一個項目”成為您項目的依賴項。 該類可能需要該項目中的其他類……等等。
我可能還會建議JDGUI對該項目進行反編譯,並挑選所需的類。 http://java.decompiler.free.fr/?q=jdgui
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.