在命令行中运行.jar文件可以正常工作,但我无法通过双击在我的电脑上执行.jar文件。有趣的是,同样的.jar文件可以通过双击在我的笔记本电脑上成功执行。
我在%JAVA_HOME\bin
变量中添加了JDK_HOME\bin
和PATH
我将JAVA_HOME
设置为C:\Program Files\Java\jre1.8.0_121
我将JDK_HOME
设置为C:\Program Files\Java\jdk1.8.0_121
。
在一段时间内, Java(TM)Platform SE二进制文件从Open with
列表中消失了,在我更改HKEY_CLASSES_ROOT\jar_auto_file\shell\open\command
密钥之前我无法添加它在regedit.exe
到适当的版本:
C:\ Program Files \ Java \ jre1.8.0_ 121 \ bin \ javaw.exe“”%1“。
以下是在我的PC上输入java -version
的Windows CMD的快照:
我尝试了以下方法,但没有成功:
C:\Program Files\Java\jre1.8.0_121\bin\javaw.exe
,assoc .jar=jarfile
和ftype jarfile="C:\Program Files\Java\jre1.8.0_121\bin\javaw.exe" -jar "%1" %*
,
其他信息:
Runtime.getRuntime().exec(String[])
。
我已尝试使用以下链接解决此问题(未成功):
备注:
java -jar jarfile.jar
来打开.jar文件。
目前,我使用C:\Windows\System32\cmd.exe /k "java -jar C:\path\to\jarfile\Program.jar"
作为运行jar文件的快捷方式,但我对此解决方案不满意,因为这会打开控制台以运行甚至Swing应用程序。
答案 0 :(得分:0)
我设法通过匹配(javaw.exe)
和{{中的路径,在打开列表中获取 Java(TM)平台SE二进制 HKEY_CURRENT_USER
1}}注册表项:
HKEY_CURRENT_USER \ Software \ Classes下\ jar_auto_file \壳\开放\命令
HKEY_LOCAL_MACHINE \ SOFTWARE \类\ jar文件\壳\开放\命令
似乎是指向旧版Java的条目之一。现在HKEY_LOCAL_MACHINE
文件终于显示图标,但仍然无法双击。
从.jar
删除.jar
和jar_auto_file
条目,它应该有效。再次双击将打开HKEY_CURRENT_USER/Software/Classes
个文件。
通过右键单击该条目并选择.jar
,确保首先备份这些条目。
可在superuser上找到其他信息。