因此,由于Netbeans生成的jar需要它也生成的lib文件夹,如何将lib文件夹添加到生成的jar中并更改Manifest以便在没有任何命令行使用的情况下启动它?
答案 0 :(得分:2)
..所以它启动时没有任何命令行使用?
如果有GUI,请使用Java Web Start启动它。
JWS提供了许多吸引人的功能,包括但不限于启动屏幕,桌面集成 1 ,文件关联,自动更新(包括延迟下载和程序化控制更新) ),本地人的分区&按平台,体系结构或Java版本下载其他资源,运行时环境配置(最低J2SE版本,运行时选项,RAM等),使用扩展轻松管理公共资源..
答案 1 :(得分:2)
虽然有很多方法可以做到,但它们主要涉及修改Ant build.xml。 This是迄今为止我发现的最好的教程。仅供参考,还有其他非常相似的SO问题。
答案 2 :(得分:2)
NetBeans IDE会自动处理所有这些。
这样生成的.jar文件将包含所有依赖项,并且具有Main-Class集的清单:
Manifest-Version: 1.0
Ant-Version: Apache Ant 1.8.1
Created-By: 1.6.0_26-b03 (Sun Microsystems Inc.)
Main-Class: desktopapplication1.DesktopApplication1
Class-Path: lib/appframework-1.0.3.jar lib/swing-worker-1.1.jar
编辑:这不会将库打包到.jar中,而是将它们放在一个单独的lib中。见@ user845279
答案 3 :(得分:0)
我最终使用ninjacave.com/jarsplice将它们(包括库)编译成一个可执行jar。 (我得到一个错误,背景颜色是默认颜色,即使我已将其设置为不同的颜色,因此我修改了jarsplice用于使用java而不是java路径启动程序的代码)