web-dev-qa-db-fra.com

javac: édition cible non valide: 1.8

J'ai récemment téléchargé JDK 1.8.0.0_06 fourni avec NetBeans. Je me suis ensuite rendu compte que mon projet JavaFx, que je développais sous Java 1.7 ne compilerait pas sous Java 1.8, et j’ai donc abandonné mon JDK à 1.7. Je n'arrive toujours pas à le faire fonctionner/compiler. Je reçois cette erreur:

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

Je suis vraiment coincé et j'apprécierais grandement toute aide.

81
Program-Me-Rev

si vous souhaitez vous retirer, modifiez également la source de votre projet en 1.7, 

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

et définir 1.7 ici

note: cependant je vous suggérerais de comprendre pourquoi cela ne fonctionne pas sur 1.8

32
Jigar Joshi

Pour IntelliJ14, vous devrez peut-être modifier la version du bytecode w.r.t. le JDK que vous utilisez (dans les paramètres généraux):

enter image description here

62
vikasing
  1. Télécharger JDK 8 .
  2. Editez votre variable env pour Java_HOME pour pointer vers le nouveau JDK 1.8 installé: R-cliquez sur Poste de travail -> Propriétés -> Paramètres système avancés -> Variables d'environnement Find Java_HOME on la liste et mettez sa valeur à quelque chose comme ça:

    C:\Program Files\Java\jdk1.8.0_31
    
  3. Recherchez l'ancienne version et modifiez-la dans la variable PATH ainsi.

  4. Vous devrez probablement redémarrer le système.

Devrait être fait.

27
thorinkor

Si cette erreur se produit lors de l'exécution d'une tâche Gradle (ou Maven), vous devez modifier la configuration de cet outil de génération pour qu'elle pointe vers votre installation de Java JDK 1.8 en suivant cet itinéraire:

Fichier -> Paramètres -> Construire, Exécution, Déploiement -> Outils de construction -> Gradle

Là, vous vérifiez que le projet Gradle lié est celui sur lequel vous travaillez et sélectionnez la JVM Gradle (vous l'avez manquée lorsque vous avez importé le projet Gradle dans IntelliJ).

 enter image description here

N'oubliez pas, lors de l'importation d'un projet Gradle (ou Maven), de définir correctement la machine virtuelle Java cible à cet endroit:  enter image description here

22
juliangonzalez

Votre javac ne pointe pas pour corriger Java.

Vérifiez où pointe votre javac en utilisant la commande suivante -

update-alternatives --config javac

Si le fichier javac avec lequel vous souhaitez compiler n'est pas indiqué, pointez-le sur "/ Java8_HOME/bin/javac" ou sur le fichier Java avec lequel vous souhaitez compiler.

14
Piyush Jajoo

La plupart du temps, ces types de problèmes surviennent en raison d'une version Java incorrecte. Assurez-vous que vos variables PATH et Java_HOME pointent vers la version correcte.

9
jprism

Réglage Maven:

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

Aucune des solutions précédentes n'a fonctionné pour moi.

Je l'ai résolu en modifiant .idea/compiler.xml Il y avait des copies "extra" (1) et (2) du mauvais module avec des cibles différentes. J'ai supprimé l'entité étrangère et modifié les objectifs de la section en 1.8 et cela a fonctionné.

4
Bill Masek

Pour IntelliJ IDEA Ultimate, dernière version en date du 18 décembre 2017, si les suggestions ci-dessus ne fonctionnent pas, essayez l'une des solutions suivantes: Cliquez sur le projet avec le bouton droit de la souris et sélectionnez "Ouvrir les paramètres du module". Ouvrez-le, puis modifiez le "Niveau de langue" dans la liste déroulante.

2
NINCOMPOOP

J'ai le même problème avec netbeans, mais mvn build est OK dans la fenêtre cmd. Pour moi, le problème est résolu après la modification du JDK de Netbeans (dans netbeans.conf comme ci-dessous), 

netbeans_jdkhome = "C:\Programmes\Java\jdk1.8.0_91"


Edit: Semble il est mentionné ici: bug Netbeans 236364

1
Leon

Alternativement, J'ai vérifié le pom.xml et Changé 

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

à 

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

si vous souhaitez vous retirer, remplacez le source de votre projet par 1,7 également

cliquez avec le bouton droit de la souris sur la fenêtre Projet -> Propriétés -> Sources et définissez 1,7 ici "Jigar Joshi

Allez aussi dans le build-impl.xml et cherchez la propriété excludeFromCopy="${copylibs.excludes}" et supprimez cette propriété car mon code était à la ligne 827 mais je l’ai vue sur d’autres lignes.

pour moi prenait un code de MAC OS Java 1.8 à WIN XP Java 1.7

1
JAG NUNEZ

Il suffit de faire ceci . Puis invalide les caches IntelliJ (File -> Invalidate Caches)

1
user3399000

J'ai eu le même problème dans IntelliJ IDEA Community avec Maven et j'ai dû réimporter le projet en cliquant avec le bouton droit de la souris sur le projet dans l'onglet Projet -> Maven -> Réimporter.

0
Csaba

L'installation d'une version plus récente de IDEA Community (2018.3 au lieu de 2017.x) a résolu le problème avec le même problème que la version Java: 11. Reimport n'avait pas fonctionné pour moi. Mais ça vaut le coup d'essayer.

0
Laszlo Lugosi