如何在Visual Studio Code中查找和更改Java编译器选项?

时间:2019-07-02 20:57:44

标签: visual-studio-code

我是Visual Studio Code(VSC)的新手,我来自Eclipse。 VSC告诉我我的项目有2个错误:

  •   

    构建路径指定执行环境J2SE-1.5。在工作区中没有安装与该环境严格兼容的JRE。

  •   

    指定的编译器遵从性为1.5,但使用的是JRE 1.8。

与Eclipse中一样,我正在寻找一个偏好设置窗口来更改Java编译器的级别(在我的情况下从1.5更改为1.8),但是找不到。我到处只能看到文件。 “首选项”菜单显示许多设置,但对于Java编译器则不显示任何内容。

5 个答案:

答案 0 :(得分:3)

在VsCode中,在下面的文件中更改您的合规性版本

  • 文件名: org.eclipse.jdt.core.prefs
  • 路径: Your_project_directory/.settings/org.eclipse.jdt.core.prefs

({.settings将被隐藏在文件浏览器中,仅在vs代码中可见。)

此外,在文件中将1.7更改为1.8。 1.8是基于Java版本输入值的Java版本

Refer the Image For info

答案 1 :(得分:1)

使用您的所有答案,我意识到该错误是由Javascript Angular组成的项目,不需要Java。然后我删除了目录“ .settings”和文件“ .classpath” ..,这两个错误消失了。

谢谢大家。

答案 2 :(得分:0)

VS Code没有对Java项目的内置支持。您需要安装一些Java扩展并将其配置为指定正确的Java JDK版本,您可以通过设置JAVA_HOME环境变量或通过设置java.home设置来做到这一点:

  

在安装JDK之后,您需要配置您的环境   用于Java开发。最常见的方法是set JAVA_HOME   您可以将环境变量更改为JDK的安装位置   还可以使用Visual Studio代码设置(workspace or user settings)中的java.home设置仅为编辑器进行配置。

我在下面介绍了安装/设置步骤。它主要基于Visual Studio Code tutorial for Java。 基于OP's comment,我将重点介绍在Mac上为VSCode设置Java扩展。


MacOS

首先,您需要安装Microsoft Java Extension Pack

安装后,它将显示 Java Overview 标签,并自动检查可用的Java SDK。如果找不到,则会提示您下载一个。 (打开/创建.java文件时, Java概述和此 JDK必需页面也似乎自动出现。)

install JDK

应从VS Code documentation开始支持以下JDK发行版:OpenJDK,Oracle的Java SE,Azul Zulu Enterprise。我正在使用OpenJDK 11。

下载并安装适当的JDK。接下来,获取您的JDK的路径。打开终端,然后:

$ /usr/libexec/java_home
/Library/Java/JavaVirtualMachines/adoptopenjdk-11.jdk/Contents/Home

如果您已经设置了JAVA_HOMEecho $JAVA_HOME),则建议取消设置。我发现最好使用java.home设置来专门为VS Code(或特定工作区)配置Java。

现在,打开“ VS Code设置”选项卡,然后找到 Java:Home 设置:

java: home

您可以修改 User Workspace 设置。在上面的屏幕截图中,我正在修改我的 User 设置,使java.home设置影响所有Java项目。您还可以修改 Workspace 设置,以针对每个工作区分别配置java.home

单击settings.json中的编辑,然后添加java.home(如果显示java.*自动完成功能,您将知道扩展程序已正确安装)。

java.home

指定您先前获得的JDK的路径:

"java.home": "/Library/Java/JavaVirtualMachines/adoptopenjdk-11.jdk/Contents/Home",

然后重新启动VS Code 。当 Java概述选项卡再次显示时,如果正确设置了路径,它将不再提示您下载JDK,这意味着它找到了您的JDK。尝试运行一个非常基本的HelloWorld.java应用程序。

Windows

如果您使用的是Windows,他们会提供特殊的安装程序来帮助您入门:

  

为帮助您快速入门,我们创建了special Installer of Visual Studio Code for Java developers

     

Download Visual Studio Code Java Pack Installer

     

注意:该安装程序当前仅适用于Windows。对于其他   操作系统,请安装这些组件(JDK,VS Code和Java扩展)   个别地。我们正在开发macOS版本,请继续关注。

答案 3 :(得分:0)

编辑: 我的pom.xml文件不正确。如果您使用Maven,请对该文件进行其他检查。

对我来说,它在“ .settings”文件夹中(应该在您的Java项目中)。那里有一些“ org.eclipse”文件。您只需将1.5更改为1.8。

答案 4 :(得分:0)

就我而言,我在环境中有一个 jdk8,我需要将 java 文件编译为 Jre 1.7 版本中的类文件。类文件major.minus 版本需要0x33。

所以我需要使用 vscode-java 来创建类文件。但是 vscode 没有编译器的设置。 eclipse 项目在 .setting/org.eclipse.jdt.core.prefs 中有一个设置文件。 Settings Global Preferences

eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7
org.eclipse.jdt.core.compiler.compliance=1.7
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
org.eclipse.jdt.core.compiler.source=1.7

这个文件可以改变eclipse jdt中的编译器选项。

vscode-java 扩展有一个设置选项来使用特定的设置文件。我们可以将下面的代码添加到 .vscode/setting.json 中以更改 java 编译器目标版本。

"java.settings.url": ".settings/org.eclipse.jdt.core.prefs",

因此编译的类文件有一个 0x33 jre major.minor 版本。