javac: invalid cible de presse: 1.8
J'ai récemment téléchargé le JDK 1.8.0.0_06 livré avec NetBeans. Puis j'ai trouver que mon JavaFx projet, que j'ai développé en Java 1.7 ne compile pas en Java 1.8, et j'ai donc démissionné de mon JDK à 1,7. Je peux pas le faire fonctionner/compiler. J'obtiens cette erreur:
javac: invalid target release: 1.8
Usage: javac <options> <source files>
Je suis vraiment coincé et apprécierais toute aide.
- si vous allez à l'étape vers le bas, puis changer votre source du projet à 1,7 ainsi, un clic droit sur votre
Project -> Properties -> Sources window
et de l'ensemble de 1,7 ici - Vous êtes un épargnant de vie @Jigar Joshi!!!! Merci encore***** un moulin. Je suis tellement reconnaissante. Vous pourriez mettre votre réponse comme une réponse afin que je puisse l'accepter. Wow! Encore merci à vous. Était bloquée depuis si longtemps!
- Si votre projet ne compile pas sous Java 1.8, vous êtes susceptible de faire quelque chose de mal (par exemple, vous avez des champs statiques pour les composants de l'INTERFACE utilisateur dans le code que vous avez posté dans l'autre quetion, ce qui est une grave erreur de conception). C'est probablement mieux pour résoudre ce problème que de revenir à une version à partir de laquelle de nombreux utilisateurs de la mise à niveau à un certain moment dans l'avenir.
- Vous avez raison @James_D. C'est mon premier projet en java. J'ai enseigné moi-même la programmation, et n'était pas la chose à éviter membres statiques, les interfaces, et le reste sur le polymorphisme jusqu'à maintenant. Mon projet est un peu trop gros pour être édité à la fois. J'ai l'intention de le modifier et de passer à l'injection de dépendance par Ressort peu à peu que j'ai fini sur les autres zones. C'est une leçon douloureuse, mais bien appris.
- Il y a des versions de Java version 1.8.0, 1.8.0_05, et 1.8.0_11, mais il n'y a pas une telle chose comme 1.8.0.0_06.
Vous devez vous connecter pour publier un commentaire.
si vous allez à l'étape vers le bas, puis changer votre source du projet à 1,7 ainsi,
et définir
1.7
iciremarque: cependant, je vous suggère de comprendre pourquoi ça ne fonctionne pas sur 1,8
Pour IntelliJ14 vous pourriez avoir à changer le pseudo-code de la version w.r.t. le JDK que vous utilisez (dans les paramètres globaux):
Modifier votre env var pour
JAVA_HOME
pour pointer vers le nouveau JDK installé 1.8:R-cliquez sur Mon Ordinateur -> Propriétés -> Paramètres Système Avancés -> Variables d'Environnement
trouver
JAVA_HOME
sur la liste et définissez sa valeur à quelque chose comme ça:Trouver l'ancienne version et le modifier dans
PATH
variable aswell.Devrait être fait.
Si cette erreur se produit lors de l'exécution d'un Gradle (ou Maven) de la tâche, vous avez besoin de modifier cet outil de génération de configuration pour pointer vers votre installation de Java JDK 1.8 suivant cet itinéraire:
Fichier -> Paramètres -> Construire, l'Exécution, le Déploiement -> créer des Outils -> Gradle
Il vous cochez la case Liée Gradle projet est celui que vous travaillez sur et sélectionnez le Gradle JVM (Vous ne le saviez pas quand vous avez importé le gradle projet dans l'Ide)
Rappelez-vous lors de l'importation d'un Gradle (ou Maven) de projet pour définir la cible de la JVM correctement ici:
Votre javac n'est pas en pointant à corriger java.
Vérifier où votre javac est de pointage à l'aide de commande suivants
Si il n'est pas fait pour les javac vous voulez compiler avec, point de "/JAVA8_HOME/bin/javac", ou qui jamais java que vous voulez compiler avec.
La plupart du temps, ce type de problème se produit en raison de la mauvaise version de java. Assurez-vous que votre CHEMIN et JAVA_HOME variables pointent vers la version correcte.
Maven réglage:
Aucune des solutions précédentes a fonctionné pour moi.
Je l'ai résolu en éditant .idea/compiler.xml
Il y avait des "extra" (1) et (2) copies de la mauvaise module avec des objectifs différents. J'ai supprimé le superflu entried et changé les cibles dans la section 1.8 et ça a fonctionné.
Pour IntelliJ IDEA Ultime de la dernière version en date du 18 Décembre 2017, si les suggestions ci-dessus ne fonctionnent pas, alors essayez de la manière suivante: Clic Droit sur le projet et naviguez jusqu'à "Ouvrir les Paramètres du Module". L'ouvrir, puis de changer le "Niveau de Langue" dans le menu déroulant.
Il suffit de ne cette. Ensuite invalider IntelliJ caches (
File -> Invalidate Caches
)Aussi aller à la
build-impl.xml
et regardez pour le bienexcludeFromCopy="${copylibs.excludes}"
et supprimer ce bien sur que mon code était à la ligne 827 mais je l'ai vu sur d'autres lignespour moi a été de prendre un code à partir de MAC OS java 1.8 pour WIN XP java 1.7
Sinon,
J'ai vérifié le pom.xml et
changé
à
J'ai eu le même problème avec netbeans, mais mvn construire est OK dans la fenêtre cmd. Pour moi le problème s'est résolu après changement de netbeans JDK (dans netbeans.conf comme ci-dessous),
Edit: il Semble qu'il est mentionné ici: netbeans bug 236364
J'ai eu le même problème dans IntelliJ IDEA Community avec Maven et j'ai eu pour réimporter le projet en cliquant-droit sur le projet dans l'onglet Projet -> Maven -> Réimporter
L'installation d'une version plus récente de l'IDÉE de Communauté (2018.3 au lieu de 2017.x) a été résolu mon problème avec le même message d'erreur mais la version java:11. Les réimporter n'avait pas fonctionné pour moi. Mais il vaut la peine d'essayer.