从 vscode 导出 jar 文件,jar 文件打不开
Exporting jar file from vscode, The jar file does not open
如果我从 IntelliJ 导出一个文件 jar 并打开它工作正常但如果在 vscode 中执行此操作后导出文件没有错误我无法打开文件我点击 jar 文件但什么也没有发生了,我从 IntelliJ 中提取了两个文件 jar 和 vscode 一个(查看侧 jar 文件中的文件)都有相同的文件和相同的 MANIFEST.MF 文件所以为什么 IntelliJ 工作但是vscode 一个没有?
备注:
java -version: "17.0.1" and javac -version: 17.0.1 (版本没问题).
如果我尝试用终端打开 jar 文件而不是通过单击我得到这个错误:
"Error: LinkageError occurred while loading main class App
java.lang.UnsupportedClassVersionError: Preview features are not enabled
for App (class file version 61.65535). Try running with '--enable-preview'"
默认启用预览功能。在 User Settings.json 中配置 java.configuration.runtimes
首选项:
"java.configuration.runtimes": [
{
"name": "JavaSE-17",
"path": "/path/to/jdk-17",
"default": true
},
],
然后重新加载 window 并重试。
我发现的最佳方法是创建一个 .bat 文件并在其中写入以下代码:
java --enable-preview -jar <filename>.jar
现在您可以通过 运行 生成的 .bat 文件
来 运行 .jar 文件
据我所知,当前版本的 Java 语言支持在使用 Java 17 编译时不会添加 --enable-preview
参数,它会在您使用Java18,能不能再提供点信息,比如
- Java
的语言支持版本
- 传递给编译器的参数(如果您只是手动编译项目)
如果我从 IntelliJ 导出一个文件 jar 并打开它工作正常但如果在 vscode 中执行此操作后导出文件没有错误我无法打开文件我点击 jar 文件但什么也没有发生了,我从 IntelliJ 中提取了两个文件 jar 和 vscode 一个(查看侧 jar 文件中的文件)都有相同的文件和相同的 MANIFEST.MF 文件所以为什么 IntelliJ 工作但是vscode 一个没有?
备注:
java -version: "17.0.1" and javac -version: 17.0.1 (版本没问题).
如果我尝试用终端打开 jar 文件而不是通过单击我得到这个错误:
"Error: LinkageError occurred while loading main class App java.lang.UnsupportedClassVersionError: Preview features are not enabled for App (class file version 61.65535). Try running with '--enable-preview'"
默认启用预览功能。在 User Settings.json 中配置 java.configuration.runtimes
首选项:
"java.configuration.runtimes": [
{
"name": "JavaSE-17",
"path": "/path/to/jdk-17",
"default": true
},
],
然后重新加载 window 并重试。
我发现的最佳方法是创建一个 .bat 文件并在其中写入以下代码:
java --enable-preview -jar <filename>.jar
现在您可以通过 运行 生成的 .bat 文件
据我所知,当前版本的 Java 语言支持在使用 Java 17 编译时不会添加 --enable-preview
参数,它会在您使用Java18,能不能再提供点信息,比如
- Java 的语言支持版本
- 传递给编译器的参数(如果您只是手动编译项目)