web-dev-qa-db-ja.com

intellij機能(...)は、この言語レベルではサポートされていません。コンパイルできません

IntelliJは私を見せています このエラー

新しいコンピューターを構築したばかりで、Javaが機能していません...最初に試してみたとき、通常のIntellijは機能していましたが、私のAndroid studio jdkへのパスが見つからなかったため、インストールできませんでした ここ は、それについて尋ねた質問です。それが機能していなかったため、Javaを複数回繰り返したが、現在IntelliJが機能していません。エラーの写真を次に示します(この言語レベルではfor-eachループがサポートされていないことを示すエラーが表示されます)。

D:ドライブにJDKをインストールしようとしましたが、うまくいきませんでした。私は現在、Java 1.8u71(u65および1.7u47を試しました))を使用しようとしていますが、どれも機能していません。

19
Seth G.

IntelliJはこのエラーを表示しています

are not supported at this language level

SDK/JDKとプロジェクト言語レベルの一致

エディターでJava言語機能を有効にするには、モジュールのProject Structureまたはモジュール設定Project SDKProjectと一致することを確認する言語レベル

プロジェクトSDK(JDK)Java 1.5はプロジェクト言語レベル5と一致します...

Java 1.6は言語レベル6と一致します...

Java 1.7は言語レベル7などに一致します。

IntelliJバージョンに応じて、 F4 または Ctrl + Alt + Shift - S プロジェクトペインのモジュールで、または Ctrl + Shift - A [プロジェクト構造]または[モジュール設定]のいずれかを入力して、[プロジェクト構造]ダイアログを開きます。

プロジェクト設定セクションで、リストの最初の項目、Project

以下のスクリーンショットでは、Java 1.8はSDKレベル8と一致するため、プロジェクトSDK 1.8 (Java version '1.8.0_72')は選択された言語レベルSDK Default (8 - Lambdas, type annotations etc.)と一致します。Javaエディターで使用する8つの言語機能を有効にします。

project structure

Project SDKの下にJDKが設定されていない場合は、別の問題です。最初にNewをクリックしてJDKを追加し、それを解決します。

39
activedecay

プロジェクトに複数の独立したモジュールがある場合、 @ activedecay's answer に加えて以下の設定を行う必要がありました。Project Settingsの下で、Modulesをクリックします。特定のモジュールを選択します。適切なLanguage Levelを選択します。

Screenshot

21
ramtech

私も同じ問題を抱えていました。

インターフェイスの名前を使用してインターフェイスの静的メソッドにアクセスしているときに、次のエラーが表示されました

静的インターフェイスメソッドの呼び出しは、この言語レベル5ではサポートされていません

これはJava 1.8であるため、いくつかのことを確認しました。

  1. Intellijを使用しています。それで CTRL+ALT+SHIFT+S プロジェクト構造ダイアログボックスが開きます

    プロジェクト->プロジェクト言語レベル

    これをSDKのデフォルト(8ラムダ、タイプアノテーションなど)に設定します。

  2. プロジェクト構造で開く

    モジュール->ソース->言語レベル

    これをプロジェクトのデフォルト(8ラムダ、タイプアノテーションなど)に設定します。

  3. 適用-> OK。

その後、エラーはなくなります。

5
kranti

私はこれと同じ問題を抱えていて、解決策が見つからなかった。

私はMavenプロジェクトを使用していたので、maven install。それも言った:

[ERROR]  thefile.Java:[24,77] diamond operator is not supported in -source 1.5
[ERROR] (use -source 7 or higher to enable diamond operator)
[ERROR] theFile.Java:[91,62] lambda expressions are not supported in -source 1.5
[ERROR] (use -source 8 or higher to enable lambda expressions)

そこで、Mavenビルドにプロパティを追加しましたpom.xmlファイル:

<properties>
    <spring.version>4.1.6.RELEASE</spring.version>
    <Java.version>1.8</Java.version>
    <maven.compiler.source>${Java.version}</maven.compiler.source>
    <maven.compiler.target>${Java.version}</maven.compiler.target>
</properties>

IntelliJのMavenプロジェクトを更新しました。出来た!

3
HankCa

Gradleプロジェクトでこのエラーを引き起こした別の問題は、build.gradleファイルのsourceCompatibility設定です。これは、必要な値と一致する必要があります。新しいGradleプロジェクトを作成するときにIntelliJが使用するのを見たデフォルト値は1.5。たとえば、ラムダを使用している場合、ビルドが失敗します。

1
melston