web-dev-qa-db-ja.com

javac:無効なターゲットリリース:1.8

私は最近NetBeansにバンドルされているJDK 1.8.0.0_06をダウンロードしました。それから、私は自分のJavaFxプロジェクト、私がJava 1.7で開発してきたものはJava 1.8でコンパイルされないことを知るようになったので、私のJDKを1.7に下げました。それでも私はそれを動作させたりコンパイルしたりすることができません。私はこのエラーが出ます:

javac: invalid target release: 1.8
Usage: javac <options> <source files>

私は本当に立ち往生していて、どんな助けにでも大いに感謝します。

83
Program-Me-Rev

あなたが辞任するつもりなら、それからあなたのプロジェクトのソースも1.7に変更してください。

right click on your Project -> Properties -> Sources window 

そしてここで1.7を設定します

注:しかし、なぜ1.8では動作しないのかを理解することをお勧めします。

33
Jigar Joshi

IntelliJ 14の場合は、バイトコードバージョンw.r.tを変更する必要があります。 (グローバル設定で)使用しているJDK

enter image description here

65
vikasing
  1. ダウンロード JDK 8
  2. 新しくインストールされたJDK 1.8を指すようにJava_HOMEのenv変数を編集します。リストからマイコンピュータ - >プロパティ - >システムの詳細設定 - >環境変数の順にクリックし、Java_HOMEを見つけて値を設定します。

    C:\Program Files\Java\jdk1.8.0_31
    
  3. 古いバージョンを見つけて、同様にPATH変数で編集します。

  4. おそらくシステムを再起動する必要があります。

行われるべきです。

27
thorinkor

Gradle(またはMaven)タスクを実行しているときにこのエラーが発生した場合は、次のルートに従って、Java JDK 1.8のインストールを指すようにそのビルドツール設定を変更する必要があります。

[ファイル] - > [設定] - > [ビルド、実行、配置] - > [ビルドツール] - > [Gradle]

そこで、Linked Gradleプロジェクトが現在作業中のプロジェクトであることを確認し、Gradle JVMを選択します(gradleプロジェクトをIntelliJにインポートしたときにこれを見逃しました)。

enter image description here

ここでターゲットJVMを正しく設定するためにGradle(またはMaven)プロジェクトをインポートするときのことを忘れないでください。 enter image description here

22
juliangonzalez

あなたのjavacは正しいJavaを指していません。

次のコマンドを使用して、あなたのJavacが指している場所を確認します -

update-alternatives --config javac

コンパイルしたいjavacが指定されていない場合は、 "/ Java8_HOME/bin/javac"、またはどのJavaをコンパイルしたいかを指定します。

14
Piyush Jajoo

ほとんどの場合、この種の問題はJavaのバージョンが正しくないために発生します。 PATH変数とJava_HOME変数が正しいバージョンを指していることを確認してください。

9
jprism

Mavenの設定

<properties>
    <maven.compiler.source>1.8</maven.compiler.source>
    <maven.compiler.target>1.8</maven.compiler.target>
</properties>
4
it-webwork

前の解決策のどれも私のために働きませんでした。

.idea/compiler.xmlを編集することでそれを解決しました。ターゲットが異なる、悪いモジュールの "余分な"(1)と(2)のコピーがありました。無関係なエントリを削除し、セクション内のターゲットを1.8に変更してもうまくいきました。

4
Bill Masek

IntelliJ IDEA 2017年12月18日現在のUltimate最新バージョンの場合、上記の提案が機能しない場合は、次の手順を試してください。プロジェクトを右クリックして[Open Module Settings]に移動します。開き、ドロップダウンから「言語レベル」を変更してください。

2
NINCOMPOOP

私はNetBeansで同じ問題を得ました、しかしmvn buildはcmdウィンドウでOKです。私にとっては、(以下のようにnetbeans.confで)netbeansのJDKを変更した後に解決しました。

netbeans_jdkhome = "C:¥Program Files¥Java¥jdk1.8.0_91"


編集:ここに記載されているようです: NetBeansバグ236364

1
Leon

または、pom.xmlを確認して変更しました

<Java.version>1.8</Java.version>

<Java.version>1.7</Java.version>
1
nanospeck

あなたが辞任するつもりなら、それからあなたのプロジェクトのソースも1.7に変更してください。

プロジェクト - >プロパティ - >ソースウィンドウを右クリックして、ここに1.7を設定してください。 "Jigar Joshi

またbuild-impl.xmlに行き、excludeFromCopy="${copylibs.excludes}"というプロパティを探し、私のコードではこのプロパティを削除しましたが827行目でしたが、他の行でも見ました

私はMAC OS Java 1.8からWIN XP Java 1.7にコードを取っていたからです

1
JAG NUNEZ

this とするだけです。その後IntelliJキャッシュを無効にします(File -> Invalidate Caches

1
user3399000

IntelliJ IDEA Mavenのコミュニティで同じ問題が発生しました。[プロジェクト]タブ - > [Maven] - > [再インポート]でプロジェクトを右クリックしてプロジェクトを再インポートする必要がありました。

0
Csaba

IDEA Communityの新しいリリース(2017.xの代わりに2018.3)をインストールすることで、同じエラーが発生しますが、Javaバージョンは11です。 Reimportは私のために働いていませんでした。しかし試してみる価値があります。

0
Laszlo Lugosi