我有一个名为helloworld.jar的JAR文件。 为了运行它,我在命令行窗口中执行以下命令:

java -jar helloworld.jar

这工作得很好,但我如何执行它与双击? 我需要安装什么软件吗?


当前回答

有一种方法不需要用户在他的PC上做改变。runtime . getrtime .exec()允许我们启动cmd.exe并在其中执行命令。因此,当用户单击.jar文件时,java程序可以在命令提示符下自行运行。

public static void main(String[] args) throws IOException {
    if(args.length == 0) {
        Process p = Runtime.getRuntime().exec("cmd.exe /c start java -jar " + (new File(NameOfClass.class.getProtectionDomain().getCodeSource().getLocation().getPath())).getAbsolutePath() + " cmd");
    } else {
        //code to be executed
    }
}

其他回答

首先在cmd(命令提示符)上设置路径:

set path="C:\Program Files\Java\jre6\bin"

然后输入

java -jar yourProgramname.jar 

在regedit中打开HKEY_CLASSES_ROOT\Applications\java.exe\shell\open\命令

双击左边的default,在java.exe路径和“%1”参数之间添加-jar。

我正在运行Windows 7 x64,无法使用任何这些修复程序。

这条对我来说还是有用的:

http://thepanz.netsons.org/post/windows7-jar-file-association-broken-with-nokia-ovi

你可以下载一个包含要运行的.bat文件的存档文件,但请检查实际的javaw.exe!!!!的路径

步骤:

1.)在谷歌上搜索“Java SE Runtime Environment”:https://www.google.com/search?q=Java+SE+Runtime+Environment

2.)在你的电脑上安装合适的版本

处方:如果你的提示符出现并立即消失,那么它这样做的原因是你的程序被执行并自动关闭。尝试在最后放置一个扫描器来终止,它会让您的提示符在终止之前等待输入。(或者使用延迟)

在完全相同的情况下,从cmd运行.jar工作正常,但双击没有任何作用。

解决方案: 打开任何文本编辑器并编写命令行: java -jar示例 将文件保存为.bat文件。 运行这个bat文件以获得所需的输出。

更进一步,您可以使用简单的GUI工具(如bat to exe Converter)将此bat文件转换为exe文件。

现在你可以把你的.jar文件以。exe文件的形式共享,任何人都可以使用,只要确保你把所有文件放在一起。(特别是.jar和.bat文件,因为.bat只是一个cmd提示符)(感觉如何逻辑)

对于开发和学习,我还是个新手。如有错误,请原谅。欢迎提出建议。