IDEA: javac: source release 1.7 requires target release 1.7

IntelliJ IDEAを使用してJUnitテストを実行すると、以下のようになります。

.

これを修正するにはどうしたらいいでしょうか?

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

Mavenでのビルドは問題ありません。(これはIDEAの設定の問題だと思っています。)

ソリューション

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

.

また、スクリーンショットに記載されているプロジェクトとモジュールのバイトコード(ターゲット)のバージョン設定を確認してください。

その他、ソース言語レベルが設定されている場所。

  • プロジェクトの構造|プロジェクトについて

を参照してください。

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

.

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

これは pom.xml 内の maven-compiler-plugin 設定で変更できます。


  [...]

    [...]


        org.apache.maven.plugins
        maven-compiler-plugin

          1.8
          1.8



    [...]

  [...]

または


  [...]

    1.8
    1.8

  [...]

IntelliJ IDEAは、Maven ProjectsツールウィンドウでMavenプロジェクトをReimportした後、この設定を尊重します。

を参照してください。

解説 (12)

私はこの問題に遭遇しました。修正方法は、プロジェクト設定のモジュールをクリックし、依存性タブをクリックすることでした。モジュールSDKが1.6のままになっていたので、1.7に変更したらうまくいきました。

解説 (1)

私の場合(intelij idea 12.1.3)、settings > compiler > java compilerに必要なオプション('target bytecode version')が見つかりました。

解説 (0)