1. ホーム
  2. java

[解決済み] IDEA: javac: ソースリリース 1.7 はターゲットリリース 1.7 を必要とします。

2022-02-17 20:58:07

質問

IntelliJ IDEA を使用して JUnit テストを実行すると、次のようなメッセージが表示されます。

どうすれば修正できますか?

  • SDK 1.7を使用
  • モジュール言語レベルは1.7

Mavenのビルドは問題なく動作します。(IDEAの設定の問題だと思われます。)

解決方法は?

Mavenからインポートされたコンパイラオプションが正しくない可能性が高いです。

また、プロジェクトとモジュールのバイトコードも確認します ( ターゲット ) のバージョン設定(スクリーンショット参照)。

その他の場所には ソース 言語レベルが設定されています。

  • プロジェクト構造|株式会社日立製作所 プロジェクト

  • プロジェクトの構成|モジュール(すべてのモジュールにチェックを入れること)|||Module ソース

メイヴン デフォルトの言語レベル 1.5 (5.0)の場合、上のスクリーンショットでは、モジュール言語レベルとしてこのバージョンが表示されます。

を使用して変更することができます。 maven-compiler-plugin の中で設定します。 pom.xml :

<project>
  [...]
  <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>
  [...]
</project>

または

<project>
  [...]
  <properties>
    <maven.compiler.source>1.8</maven.compiler.source>
    <maven.compiler.target>1.8</maven.compiler.target>
  </properties>
  [...]
</project>

IntelliJ IDEAは、以下のように設定すると、この設定を尊重します。 再インポート でのMavenプロジェクトは Mavenプロジェクト ツールウィンドウに表示されます。