verwende ich Eclipse-Maven & Eclipse-Mars kompilieren Java 1.8 Fehler
Version: Mars.2 Release (4.5.2)
Build id: 20160218-0600
und Maven (MVN -v)
Apache Maven 3.3.3 (7994120775791599e205a5524ec3e0dfe41d4a06; 2015-04-22T13:57:37+02:00)
Maven home: C:\Daten\maven
Java version: 1.8.0_60, vendor: Oracle Corporation
Java home: C:\Program Files\Java\jdk1.8.0_60\jre
Default locale: de_DE, platform encoding: Cp1252
OS name: "windows 7", version: "6.1", arch: "amd64", family: "dos"
my% JAVA_HOME% auf
C:\Program Files\Java\jdk1.8.0_60
gesetzt ist und Mein Java ist (Java-Version)
java version "1.8.0_60"
Java(TM) SE Runtime Environment (build 1.8.0_60-b27)
Java HotSpot(TM) 64-Bit Server VM (build 25.60-b23, mixed mode)
Ich starte Eclipse mit -VM (Java JDK-Version) und ich habe externe Maven-Installation in Eclipse. nachdem ich ein Projekt importiert habe und Strang-Verhalten bekommen habe. Einige Klassen sind rot in eclispe und einige nicht. Ich überprüfe mit javap-Version und sie sind alle mit Hauptversion 52 kompiliert. Ich habe einen neuen Arbeitsbereich erstellt und das gleiche Ergebnis erhalten. sehr eigenartig. Wenn ich eine "rote" Java-Klasse mit Eclipse öffne und sie einfach speichere, wird es ok (keine Kompilierfehler).
Ich weiß wirklich nicht, was das Problem ist.
Fehler erhalte ich in Eclipse
Syntax error on token "package", assert expected
Syntax error on token "import", throw expected
als Eltern pom verwende ich Feder-boot-Starter-Eltern mit Version 1.3.3-RELEASE ich die Eigenschaften auch alles, was ich wie java.version wissen angegeben, maven.compiler.source/target und project build source und output encoding. versuchte auch, Maven Compiler-Plugin zu definieren. hat nicht geholfen.
Bereitstellen eines Codebeispiel
package com.test;
public class AExample {
public static void main(String[] args) {
System.out.println(args.length);
}
}
es wie es aussieht totaly auf der Verpackung ist abhängig habe ich die Klasse in. mit einem Paket es genauso normal kompiliert mit einigen es hat die folgende erros
com.test cannot be resolved to a type AExample.java line 1
Illegal modifier for the local class AExample; only abstract or final is permitted AExample.java line 3
Syntax error on token "package", assert expected AExample.java line 1
Syntax error, insert "ClassBody" to complete ClassDeclaration AExample.java line 3
The nested type AExample cannot hide an enclosing type AExample.java line 3
die exakt gleiche Klasse in einem anderen Paket hat diesen Fehler nicht erzeugt. nur in einem bestimmten Paket. irgendwelche Ideen, was ich überprüfen kann?
Sind Sie die neue M2e-Plugin (Schiffe mit eclipse oder zumindest mit der wtp bundle), das alte verhält sich in neuen Versionen seltsam. Haben Sie Ihre Arbeitsplatzeigenschaften überprüft: Java> JRE, um Java 8 zu sein? – Andy
ja sein me2 plugin und ja ich habe dafür gesorgt das 1,8 verwendet wird. in Java -> jre und Java -> Compiler in Eclipse – borehack
Die Fehler sind nicht genug; Zeigen Sie den Code, der sie erzeugt. –