无需修改路径即可打包java应用程序

无需修改路径即可打包java应用程序,java,deployment,jar,Java,Deployment,Jar,我有一个Java控制台应用程序,我可以使用IntelliJ将其打包成jar文件,并可以使用bat或cmd文件运行该程序,该文件具有以下命令: java -jar main.jar 问题是,我的开发机器(Windows)修改了JAVA_主目录和路径,因此可以正常工作 有没有一种方法可以让我打包这个罐子,这样就可以不用打开它了 我试着到处寻找,在SO和其他与之相关的站点上发现了问题,但似乎所有这些仍然需要修改PATH变量 说: 运行Windows或Mac OS X的计算机通常不需要更改系统路径变量

我有一个Java控制台应用程序,我可以使用IntelliJ将其打包成jar文件,并可以使用bat或cmd文件运行该程序,该文件具有以下命令:

java -jar main.jar
问题是,我的开发机器(Windows)修改了JAVA_主目录和路径,因此可以正常工作

有没有一种方法可以让我打包这个罐子,这样就可以不用打开它了

我试着到处寻找,在SO和其他与之相关的站点上发现了问题,但似乎所有这些仍然需要修改PATH变量

说:

运行Windows或Mac OS X的计算机通常不需要更改系统路径变量。以下说明仅适用于高级用户或系统管理员

如果是这种情况,那么如果其他人不是“高级用户”或“系统管理员”,他们如何运行该程序

编辑: 顺便说一句,我知道这是可能的,因为一些jar文件,比如使用Swing框架的文件,只要双击jar就可以运行,然后应用程序就会打开

编辑2: 看来这条路是对的

编辑3:
然而,这对我来说不起作用。我在现有jar上尝试的命令是
jar uvfm main.jar manifest.txt
,它返回了
更新的清单
,但没有任何更改。

不,您不能。它们是系统变量。最好的办法是编写一个shell脚本来设置这些变量。

否。它应该能够理解“java”命令。为此,需要设置路径。但是,如果您计划将jar作为应用程序进行转换,则还需要随应用程序一起提供jre。但我不认为这是您想要的

我不相信您能够获得随应用程序提供JRE的权限,但这正是您需要做的。如果安装了JRE,则应正确设置路径(从Windows和Mac OS Leopard(10.5.8)上的经验来看)。。。。。。。。如果没有安装JRE,那么和类似的工具可以提供帮助。有了这个,您只需将已安装的JRE添加到子文件夹中,用户无需安装任何东西。我不确定,但我相信我查过Oracle是否同意这种方法,我认为我的发现是“是”。。。。。。。。最后,您可能希望启用双击启动功能:我不在乎操作系统是否知道
java
命令。如果安装了Java,那么jar文件应该与Java相关联,并且应该能够像任何其他应用程序一样打开,对吗?不一定。根据建议捆绑JRE(如果可能)或编写脚本。