我刚刚在Windows 10上安装了Oracle JDK11。我注意到PATH变量不包含JDK 11路径。而且,.JAR文件扩展名与javaw不关联。我们的用户曾经双击JAR文件来执行客户端Java / SWING应用程序。在Java 11中,这不起作用。这是错误还是功能?我知道如何设置PATH并使用命令行手动启动应用程序。我只想让最终用户更轻松。有什么想法吗?
答案 0 :(得分:1)
与以前的Java版本一样,Java 11中没有Public JRE。不要与以前的JDK版本中的jre
目录混淆,它不是Public JRE。同样,旧的Public JRE的安装程序还将java.exe
和javaw.exe
程序复制到默认情况下在C:\Windows\System32
环境变量中定义的PATH
目录中。他们还做了许多其他事情,例如Windows注册表中的更改。旧的Public JRE的安装程序从未更改PATH
中的任何内容。
公共JRE的官方替代品是一个自定义运行时环境,您可以通过JDK的jlink工具来构建该环境。但是,在这种情况下,除了UNIX shell和Batch脚本之外,您将没有jar文件。
如果您不喜欢它,则可以使用JDK 11,并将Windows资源管理器中的jar文件与JDK的javaw.exe
而不是JRE关联,如Running JAR file on Windows
答案 1 :(得分:1)
答案 2 :(得分:0)
我制作了一个bat文件,其中包含以下内容:
java -jar %1
点击一个罐子>打开>选择蝙蝠
如果正确设置了Java路径(使用java -version进行检查),则它将在双击后运行jar。