![](/img/trans.png)
[英]NetBeans - How to Build Project jar file with all required libraries
[英]Java Netbeans, libraries not being packaged into jar file on build
我正在使用netbeans,並將其保存在我的build.xml文件中(在“項目”>“ Build.xml”下)
<target name="package-for-store" depends="jar">
<property name="store.jar.name" value="MyProjectName"/>
<property name="store.dir" value="store"/>
<property name="store.jar" value="${store.dir}/${store.jar.name}.jar"/>
<echo message="Packaging ${application.title} into a single JAR at ${store.jar}"/>
<delete dir="${store.dir}"/>
<mkdir dir="${store.dir}"/>
<jar destfile="${store.dir}/temp_final.jar" filesetmanifest="skip">
<zipgroupfileset dir="dist" includes="*.jar"/>
<zipgroupfileset dir="dist/lib" includes="*.jar"/>
<manifest>
<attribute name="Main-Class" value="${main.class}"/>
</manifest>
</jar>
<zip destfile="${store.jar}">
<zipfileset src="${store.dir}/temp_final.jar"
excludes="META-INF/*.SF, META-INF/*.DSA, META-INF/*.RSA"/>
</zip>
<delete file="${store.dir}/temp_final.jar"/>
大概應該做的是將我擁有的3個庫打包到我的jar文件中,以便在運行jar時具有它的依賴關系。
我的文件夾系統如下所示:
項目/ dist / lib /
但是,當我在netbeans中單擊“清理並生成”時,它沒有將庫打包到jar中,而是似乎忽略了我放入build.xml文件中的代碼。
我需要單擊一些按鈕以使其使用我的構建配置嗎?
終於我找到了答案。 在Netbeans中,可以在jar文件中構建依賴庫。
Netbeans提供了一種工具,該工具可以自動取消存檔依賴庫並將其包含在jar中(例如MyJar.jar | org \\ apache \\ commons ...)。
而且實際上很容易做到!
首先,您需要單擊顯示您的項目的左上角窗口中的“文件”選項卡。 然后,您應該能夠看到所有文件,包括Build.xml(已在其中放置了構建代碼,例如上面的問題中的內容)。
右鍵單擊Build.xml文件,然后選擇“運行目標”
然后在彈出菜單中選擇“其他目標”
然后在另一個彈出菜單中選擇“商店包裝”
然后,這將構建您的jar文件,其依賴項位於/ YourProject / store /
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.