当前位置:  开发笔记 > 编程语言 > 正文

在Windows上运行JAR文件

如何解决《在Windows上运行JAR文件》经验,为你挑选了10个好方法。

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

java -jar helloworld.jar

这工作正常,但如何通过双击执行它?我需要安装任何软件吗?



1> Brian Kelly..:

最简单的路由可能是升级或重新安装Java Runtime Environment(JRE).

或这个:

打开Windows资源管理器,从工具选择'文件夹选项...'

单击"文件类型"选项卡,向下滚动并选择"JAR文件类型".

按"高级"按钮.

在"编辑文件类型"对话框中,选择"操作"框中的"打开"并单击"编辑...

按Browse按钮并导航到Java解释器javaw.exe的位置.

在用于执行操作字段的应用程序中,需要显示类似的内容C:\Program Files\Java\j2re1.4.2_04\bin\javaw.exe" -jar "%1" %(注意:以'javaw'开头的部分必须完全相同;路径名的其他部分可能因您使用的Java版本而异)然后按OK按钮直到关闭所有对话框.

这是从这里偷来的:http://windowstipoftheday.blogspot.com/2005/10/setting-jar-file-association.html


win 7中的"文件夹"选项中没有"文件类型"选项卡
我认为简单的方法是右键单击任何,jar文件>打开并选择"Java运行时环境".:)

2> Hendy Irawan..:

在Windows Vista或Windows 7中,已删除手动文件关联编辑器.

最简单的方法是运行Jarfix,一个小巧但功能强大的免费软件工具.只需运行它,您的Java应用程序就会重新启动......再次双击.



3> 小智..:

如果您需要分发.jar文件并使其可以在其他人的Windows计算机上运行,​​您可以在命令提示符中创建一个简单的.bat文件:

java -jar MyJavaTool.jar

并将.bat文件放在与.jar文件相同的目录中.



4> 小智..:

如果您有一个名为Example.jar的jar文件,请遵循以下规则:

    打开一个 notepad.exe

    写: java -jar Example.jar

    用扩展名保存 .bat

    将其复制到包含该.jar文件的目录

    双击它以运行您的.jar文件


1)这不适用于Mac.或Unix.2)它创建了一个不必要的文件.3)2年前提供了更好的答案.4)..那个词是'你'.

5> Bob..:

在命令提示符下启动可运行的jar文件时,这会产生一个有趣的副作用.

如果您尝试(在命令提示符下)

jarfile.jar参数

没有快乐,因为这被翻译成以下(不起作用):

javaw.exe -jar jarfile.jar参数

但是以下命令确实有效:

java.exe -jar jarfile.jar参数

如果您将文件管理器中的关联更改为:

"C:\ Program Files\Java\j2re1.4.2_04\bin\java.exe"-jar"%1"%*

然后你可以输入:

jarfile.jar参数

在命令提示符下,它现在可以工作!编辑:(但是,当你运行基于表单的(非控制台)Java应用程序时,你会得到一个黑色的控制台窗口,所以这不是一个理想的解决方案)

如果你通过在windows中双击它们来运行这些jar文件,那么就不会传递任何参数,所以你的Java代码需要处理堆栈溢出异常并在最后包含一个"按键"功能,否则窗口就会消失.

要在Windows中传递参数,您必须创建jar文件的快捷方式,其中包含目标行中的参数(右键单击快捷方式并选择属性),您无法在此处向jar文件图标本身添加参数办法.

这里没有单一,一致的解决方案,但是你会遇到与任何其他控制台应用程序相同的问题.

有一个名为"bat to exe"的Windows免费应用程序,您可以使用它从.bat文件创建一个exe文件,其中包含适当的命令行.您还可以使用此应用程序将jar文件嵌入到exe文件中,并在运行完成后将其清理干净,这样这可能是一个更优雅的解决方案.



6> 小智..:

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

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

然后键入

java -jar yourProgramname.jar 



7> user85421..:

在Windows XP *中,您只需要2个shell命令:

   C:\>ftype myjarfile="C:\JRE1.6\bin\javaw.exe" -jar "%1" %* 
   C:\>assoc .jar=myjarfile  

显然使用JRE的正确路径和您想要的任何名称而不是myjarfile.

要检查当前设置:

   C:\>assoc .jar  
   C:\>ftype jarfile  

这次使用第一个命令返回的值,如果有的话,而不是jarfile.

* 未经Windows 7测试



8> dario111cro..:

有办法不需要用户在他的电脑上进行更改.Runtime.getRuntime.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
    }
}



9> 小智..:

除了所有其他建议,还有一件事你需要考虑.你的helloworld.jar是一个控制台程序吗?如果是,那么我不相信你能够把它变成一个可双击的jar文件.控制台程序使用常规cmd.exe shell窗口进行输入和输出.通常jar"启动器"绑定到javaw.exe,它不会创建命令shell窗口.



10> 小智..:

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

这个对我来说是有用的:

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

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

推荐阅读
ifx0448363
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有