簡體   English   中英

在Windows 7上雙擊無法運行.jar文件

[英]Unable to run .jar files by double-clicking them on Windows 7

在命令行中運行.jar文件可以正常工作,但是我無法通過在PC上雙擊來執行.jar文件 有趣的是,相同的.jar文件通過雙擊成功在我的筆記本電腦上執行。

我在PATH變量中包含%JAVA_HOME\\binJDK_HOME\\bin
我將JAVA_HOME設置為C:\\Program Files\\Java\\jre1.8.0_121
我將JDK_HOME設置為C:\\Program Files\\Java\\jdk1.8.0_121

在一段時間內, Java(TM)平台SE二進制文件從“ Open with列表中消失了,直到將regedit.exeHKEY_CLASSES_ROOT\\jar_auto_file\\shell\\open\\command鍵更改為適當的版本之前,我無法添加它:

C:\\ Program Files \\ Java \\ jre1.8.0_ 121 \\ bin \\ javaw.exe“”%1“。


這是在我的PC上輸入java -version的Windows CMD的快照:
Windows CMD中的java -version


我嘗試了以下方法,但沒有成功:

  • 重新安裝JRE和JDK,
  • 將.jar文件與C:\\Program Files\\Java\\jre1.8.0_121\\bin\\javaw.exe
  • 在命令行中使用assoc .jar=jarfileftype jarfile="C:\\Program Files\\Java\\jre1.8.0_121\\bin\\javaw.exe" -jar "%1" %*
  • 創建一個新的系統環境變量OPENDS_JAVA_ARGS並將其設置為-jar


附加信息:

  • 我正在使用Windows 7 Professional 64位(Service Pack 1),並且在我的PC和筆記本電腦上都安裝了最新更新。
  • 雙擊運行.jar文件可以在我的PC上運行,但是突然停止工作了一段時間。 我沒有修改與Java相關的任何內容。
  • 我擁有JRE和JDK的最新版本(Java 8版本121)。
  • 在我要運行的.jar文件中,有些是GUI Swing應用程序,有些使用Runtime.getRuntime().exec(String[])打開系統控制台(如果尚未打開Runtime.getRuntime().exec(String[])


我已經嘗試使用以下鏈接上的解決方案來解決此問題(但未成功):


筆記:

  • 我不想使用WinRAR打開.jar文件。
  • 我不想通過在cmd.exe中運行java -jar jarfile.jar來打開.jar文件。
  • 我不是在尋找第三方應用程序來運行.jar文件。


現在,我使用C:\\Windows\\System32\\cmd.exe /k "java -jar C:\\path\\to\\jarfile\\Program.jar"作為運行jar文件的快捷方式,但是我不滿意這個解決方案可以打開控制台,使其甚至可以運行Swing應用程序。

通過匹配HKEY_CURRENT_USERHKEY_LOCAL_MACHINE注冊表項中的路徑,我設法在“ 打開方式”列表中獲取Java™Platform SE二進制文件 (javaw.exe)

HKEY_CURRENT_USER \\ Software \\ Classes下\\ jar_auto_file \\殼\\開放\\命令

HKEY_LOCAL_MACHINE \\ SOFTWARE \\ Classes下\\ jar文件\\殼\\開放\\命令

似乎其中一項指向舊版Java。 現在, .jar文件終於顯示了圖標, 但在雙擊上仍然不起作用

更新:解決方案

HKEY_CURRENT_USER/Software/Classes刪除.jarjar_auto_file條目,它應該可以工作。 .jar文件應再次雙擊打開。
通過右鍵單擊條目並選擇“ Export ”,確保首先備份這些條目

可以在超級用戶上找到更多信息。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM