J'essaie de lancer ma classe d'analyseur JSQL, mais j'obtiens Error: Java: invalid source release 1.9
.
J'ai essayé de suivre cette réponse . J'ai modifié Fichier> Construire, Exécuter, Déployer> Compilateur Java> Version du code complémentaire du projet: 1.8. Cependant, je ne peux pas changer le niveau de langue du module et le niveau de langue du projet en 1.8 car il n'y a pas d'option pour cela. J'ai toujours la même erreur ci-dessous.
Code
package cs4321.project2;
import Java.io.FileReader;
import net.sf.jsqlparser.parser.CCJSqlParser;
import net.sf.jsqlparser.statement.Statement;
import net.sf.jsqlparser.statement.select.Select;
public class Parser {
private static final String queriesFile = "resources/input/queries.sql";
public static void main(String[] args) {
try {
CCJSqlParser parser = new CCJSqlParser(new FileReader(queriesFile));
Statement statement;
while ((statement = parser.Statement()) != null) {
System.out.println("Read statement: " + statement);
Select select = (Select) statement;
System.out.println("Select body is " + select.getSelectBody());
}
} catch (Exception e) {
System.err.println("Exception occurred during parsing");
e.printStackTrace();
}
}
}
Sélectionnez le projet, puis Fichier> ProjectStructure> ProjectSettings> Modules -> sourcesVous avez probablement le niveau de langue défini sur 9:
Changez-le simplement en 8 (ou ce que vous avez besoin) et vous êtes prêt à partir.
Vérifiez également les mêmes paramètres de niveau de langue mentionnés ci-dessus, sous Paramètres du projet> Projet.
J'ai eu le même problème. Il y a une réponse:
Vous l'avez! Maintenant vous avez Java 9!
Je viens d'avoir un problème similaire. Le projet avait été ouvert avec Java 9, mais même après que tous les modules et le projet aient été redéfinis sur 1.8, je continuais à avoir l’erreur.
J'avais besoin de forcer Gradle à actualiser le projet, puis tout s'est déroulé comme prévu.
Alternativement via les paramètres du projet:
Selon la configuration de votre build, cela peut être la voie à suivre.
Lorsque vous utilisez le projet Maven.
vérifier le fichier pom.xml
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<Java.version>9</Java.version>
</properties>
si jdk 8 est installé sur votre ordinateur, changez la propriété Java.version
de 9
en 8
Toute personne aux prises avec ce problème qui a essayé la solution de DeanM mais en vain, il y a autre chose à vérifier, à savoir la version du JDK que vous avez configurée pour votre projet. Ce que j'essaie de dire, c'est que si vous avez configuré JDK 8u191 (par exemple) pour votre projet, mais que le niveau de langue est défini sur une valeur supérieure à 8, vous obtiendrez cette erreur.
Dans ce cas, il est probablement préférable de demander au responsable du projet quelle version du kit JDK serait préférable pour compiler les sources.
J'ai également eu le même problème dans IntellijIdea, après avoir sélectionné le projet, puis Fichier> ProjectStructure> ProjectSettings> Modules -> les sources que l'option montrait - le niveau de langue défini sur 9:
Donc, je viens de le changer en 8. Pourtant, mon problème n'a pas été résolu.
Le problème principal était avec pom.xml. J'ai réimporté le fichier pom.xml et mon problème a été résolu.
Ainsi, chaque fois que vous modifiez le fichier pom.xml, IDEA doit mettre à jour la structure du projet. Par exemple, si vous avez ajouté d'autres dépendances, IDEA doit les ajouter en tant que bibliothèques de projet.
Dans "Paramètres> Construire, Exécution, Déploiement> Outils de compilation> Maven> Importer", vous pouvez choisir "Importer des projets Maven automatiquement". Cela invoquera automatiquement l'action "Réimporter" lorsque le fichier pom.xml sera modifié.