簡體   English   中英

如何在 IntelliJ 中將 Java 版本更改為 Maven?

[英]How to change Java version for Maven in IntelliJ?

我是 Maven 和 IntelliJ IDEA 的新手。

我有一個 Maven 項目,寫在 Java 8 中。每當我嘗試構建它時(Maven 項目 window -> 生命周期 -> 編譯 -> 運行 Maven 構建),我都會遇到一系列編譯錯誤:

[ERROR] path/to/file.java:[26,52] lambda expressions are not supported in -source 1.5
(use -source 8 or higher to enable lambda expressions)

我應該在哪里更改 -source 參數的值? 我嘗試將它作為附加參數添加到設置 -> 編譯器 -> Java 編譯器中,但我得到了相同的結果。

項目和模塊的語言級別都設置為 8.0。

我正在使用 Maven 3.2.3 和 IntelliJ IDEA 社區版 13.1.2。

或者更簡單,將其添加到您的 pom 的properties部分:

<properties>
  <maven.compiler.source>1.8</maven.compiler.source>
  <maven.compiler.target>1.8</maven.compiler.target>
</properties>

概括:

  • 'maven-compiler-plugin'總是有效的! 這是我建議你使用的。

要更改語言級別,請使用

<build>
    <plugins>
        <plugin>
            <artifactId>maven-compiler-plugin</artifactId>
            <configuration>
                <source>1.4</source>
                <target>1.4</target>
            </configuration>
        </plugin>
    </plugins>
</build>

屬性並不總是改變 Intellij 的語言級別!

在下面的代碼中,使用 maven-compiler-plugin 在 pom 中配置了 1.4
(Intellij的jdk是1.8),項目的語言級別也相應改成了1.4:

在此處輸入圖片說明

這是雙重檢查! 這是一個例子。 大多數時候你不會將 JDK 的版本降級到 1.4!

當然如果你使用properties,假設你放入pom 1.8,那么如果你在Intellij中使用1.8 JDK(語言級別默認為1.8或語言默認手動更改),那么你將可以在1.8中編碼但是在 mvn 編譯時,將不會看到屬性,您將默認使用 Maven 1.5 並且編譯不會成功!

我認為對這個問題的任何回答都沒有解決這個問題——“......在 IntelliJ 中”。

以下是步驟:-

  • 轉到 IntelliJ 中的首選項(或快捷鍵 ⌘ + ,)
  • Build, Execution, Deployment > Maven > Importer - 選擇“ JDK for Importer ”下拉菜單,然后選擇你喜歡的java版本,點擊Apply
  • Build, Execution, Deployment > Maven > Runner - 選擇“ JRE ”下拉菜單,然后選擇你喜歡的java版本,點擊Apply
  • 單擊確定

在 pom.xml 中更改如下所示的源

<build>
        <finalName>MQService</finalName>
        <plugins>
            <plugin>
                <artifactId>maven-compiler-plugin</artifactId>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                </configuration>
            </plugin>
        </plugins>
    </build>

將以下幾行添加到 root(項目級別)pom.xml 幫助我解決了上述問題:(這兩個選項都對我有用)

選項1:

<properties>
    <maven.compiler.source>1.8</maven.compiler.source>
    <maven.compiler.target>1.8</maven.compiler.target>
</properties>

選項 2:

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <configuration>
                <source>1.8</source>
                <target>1.8</target>
            </configuration>
        </plugin>
    </plugins>
</build>

最初發布於: IntelliJ IDEA 13 盡管設置為 1.7,但仍使用 Java 1.5

有時可能會出現在 Intellij 中配置 maven 並更改為以下命令構建后不起作用,因此使用 Intellij maven 工具構建它。

Setting > Maven > Importer - select the `JDK` 
Setting > Maven > Runner - select the `JRE`

之后,嘗試使用 Intellij maven 工具而不是 Intellij 控制台構建。

有兩種方法可以做到這一點:

首先 - 添加屬性

<properties>
  <maven.compiler.source>1.8</maven.compiler.source>
  <maven.compiler.target>1.8</maven.compiler.target>
</properties>

第二個添加插件

<plugin>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>3.5.1</version>
        <configuration>
            <source>1.8</source>
            <target>1.8</target>
        </configuration>
</plugin>

您應該在 pom.xml 中添加以下代碼以強制更改語言級別

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <configuration>
                <source>8</source>
                <target>8</target>
            </configuration>
        </plugin>
    </plugins>
</build>

現在, intelliJ 2019.3 CE 會為您執行此操作,如果您要導入然后按 alt+enter,您將看到一個選項,說“將語言級別更改為 8 以使用此功能”

打開 ubuntu 終端轉到您的根目錄並鍵入:

export JAVA_HOME = <path to jdk>

例如,它對我來說很好{在 IntelliJ 終端中做同樣的事情}。

export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64

檢查設置值類型echo $JAVA_HOME

檢查 Maven 版本類型: mvn -version

您可以通過鍵入此命令找到 JDK 的所有路徑,並且您可以設置 JDK 版本。

sudo update-alternatives --config java

還要檢查你是否有相同的java -versionjavac -version

Here are the steps for intellij version# 2021.2 Ultimate Edition: -

Go to Settings in IntelliJ
Build, Execution, Deployment > Build Tools > Maven > importing > "JDK for Importer" then select your preferred java version, Click Apply
Build, Execution, Deployment > Build Tools > Maven > Runner > For "JRE" option select your preferred java version, 
Click Apply
Click OK

可以點擊最右邊的maven視圖,然后Lifecycle -> 右擊installModify Run Configuration

1個

然后展開Java Options ,禁用Inherit from settings和 select 你想要的 Java 版本。

2個

暫無
暫無

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

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