Java Spring - Build schlägt fehl -

furryhamster

Lt. Commander
Registriert
Okt. 2008
Beiträge
1.100
Hi,

ich versuche anhand eines Spring Tutorials meine Java Kenntnisse aufzufrischen/aufzubauen. Dazu nutze ich folgendes Tutorial:


Bei Maven Build erhalte ich jedoch die beigefügte Exception. pom/web/servlet.xml wie im Tutorial. Kann ich hier gerne auch posten falls etwas bestimmtes benötigt wird.

Unterschied zum Tutorial:
- Ich nutze Java JDK 8 bzw. erhalte mit JDK 7 die gleiche Exeption
- Ich nutze den Tomcat 8

Jemand ne Idee? Lösungen die ich bisher gesehen habe liefen nicht oder ich habe sie falsch umgesetzt. (z. B. Version von maven-compiler-plugin ändern)

Code:
[INFO] Scanning for projects...
[INFO]                                                                         
[INFO] ------------------------------------------------------------------------
[INFO] Building CrunchifySpringMVCTutorial 0.0.1-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO] 
[INFO] --- maven-clean-plugin:2.5:clean (default-clean) @ CrunchifySpringMVCTutorial ---
[INFO] Deleting D:\Projekte\CrunchifySpringMVCTutorial\target
[INFO] 
[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ CrunchifySpringMVCTutorial ---
[WARNING] Using platform encoding (Cp1252 actually) to copy filtered resources, i.e. build is platform dependent!
[INFO] skip non existing resourceDirectory D:\Projekte\CrunchifySpringMVCTutorial\src\main\resources
[INFO] 
[INFO] --- maven-compiler-plugin:3.1:compile (default-compile) @ CrunchifySpringMVCTutorial ---
[INFO] Changes detected - recompiling the module!
[WARNING] File encoding has not been set, using platform encoding Cp1252, i.e. build is platform dependent!
[INFO] Compiling 1 source file to D:\Projekte\CrunchifySpringMVCTutorial\target\classes
[INFO] -------------------------------------------------------------
[ERROR] COMPILATION ERROR : 
[INFO] -------------------------------------------------------------
[ERROR] No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?
[INFO] 1 error
[INFO] -------------------------------------------------------------
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 3.530 s
[INFO] Finished at: 2016-01-07T15:23:43+01:00
[INFO] Final Memory: 8M/114M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile (default-compile) on project CrunchifySpringMVCTutorial: Compilation failure
[ERROR] No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?
[ERROR] -> [Help 1]
[ERROR] 
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR] 
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException
 
Hab mal zwei Screens angehangen. Reichen die aus?
 

Anhänge

  • environment2.png
    environment2.png
    32,2 KB · Aufrufe: 208
  • environment.png
    environment.png
    41,4 KB · Aufrufe: 204
Hallo,

Die Fehlermeldung kommt von maven und hat soweit ich das sehe nichts mit eclipse zu tun. Maven sucht nach der JAVA_HOME Umgebungsvariable und die scheint nicht gesetzt zu sein.
 
Java_home ist aufs java 8 jdk gesetzt und wird von meinem "nicht eclipse" Maven auch mit mvn --version auch erkannt
 
Hab jetzt unter execution environment jdk 1.8 gewählt wie auf stackoverflow beschrieben. Java compiler fürs Projekt ist ebenfalls 1.8

Unter "Problems" habe ich noch zwei Fehler gefunden. Kann es damit zusammenhängen?
 

Anhänge

  • problems.png
    problems.png
    47,7 KB · Aufrufe: 240
Hab jetzt noch mal alles kontrolliert und pom ist auch vorhanden. Erhalte immer noch die gleiche Meldung.

Hier mal ein Auszug aus meiner pom.xml

Code:
	<build>
		<sourceDirectory>src</sourceDirectory>
		<plugins>
			<plugin>
				<artifactId>maven-compiler-plugin</artifactId>
				<version>3.3</version>
				<configuration>
					<source>1.8</source>
					<target>1.8</target>
				</configuration>
			</plugin>
			<plugin>
				<artifactId>maven-war-plugin</artifactId>
				<version>2.4</version>
				<configuration>
					<warSourceDirectory>WebContent</warSourceDirectory>
					<failOnMissingWebXml>false</failOnMissingWebXml>
				</configuration>
			</plugin>
		</plugins>
	</build>
 
In deiner pom hast du als Plugin Version 3.3 angegeben, in deinem Logauszug oben wird aber Version 3.1 verwendet. Irgendwas haut da nicht hin.

Geht mal bitte in der Commandline in das Verzeichnis deiner pom.xml und gib ein
Dabei sollte sowas dastehen wie:
C:\Program Files\Java\jdk1.8.0_40

Falls das passt, machst du dort bitte mal ein

gefolgt von einem

Den gesamten Log postest du dann hier.
 
Das liegt daran, dass ich eben noch mal mit der 3.3 versucht habe, da ja geschrieben wurde, dass diese version mit dem JDK passen muss. Aber ich erhalte sowohl bei 3.1 als auch 3.3 die gleiche Meldung.

Hier der Auszug aus der Command Line. Da man anhand des Pfades die Version nicht erkennen kann, hier noch ein Auszug aus der Release Datei:
JAVA_VERSION="1.8.0_65"

Code:
D:\Projekte\CrunchifySpringMVCTutorial>echo %JAVA_HOME%
C:\Java\JDK

D:\Projekte\CrunchifySpringMVCTutorial>mvn clean
[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building CrunchifySpringMVCTutorial 0.0.1-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- maven-clean-plugin:2.5:clean (default-clean) @ CrunchifySpringMVCTutorial ---
[INFO] Deleting D:\Projekte\CrunchifySpringMVCTutorial\target
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 1.282 s
[INFO] Finished at: 2016-01-13T23:21:04+01:00
[INFO] Final Memory: 6M/77M
[INFO] ------------------------------------------------------------------------

D:\Projekte\CrunchifySpringMVCTutorial>mvn install
[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building CrunchifySpringMVCTutorial 0.0.1-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ CrunchifySpringMVCTutorial ---
[WARNING] Using platform encoding (Cp1252 actually) to copy filtered resources, i.e. build is platform dependent!
[INFO] skip non existing resourceDirectory D:\Projekte\CrunchifySpringMVCTutorial\src\main\resources
[INFO]
[INFO] --- maven-compiler-plugin:3.3:compile (default-compile) @ CrunchifySpringMVCTutorial ---
[INFO] Changes detected - recompiling the module!
[WARNING] File encoding has not been set, using platform encoding Cp1252, i.e. build is platform dependent!
[INFO] Compiling 1 source file to D:\Projekte\CrunchifySpringMVCTutorial\target\classes
[INFO] -------------------------------------------------------------
[ERROR] COMPILATION ERROR :
[INFO] -------------------------------------------------------------
[ERROR] No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?
[INFO] 1 error
[INFO] -------------------------------------------------------------
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 3.937 s
[INFO] Finished at: 2016-01-13T23:21:18+01:00
[INFO] Final Memory: 8M/114M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.3:compile (default-compile) on project CrunchifySpringMVCTutorial: Compilation failure
[ERROR] No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?
[ERROR] -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException

D:\Projekte\CrunchifySpringMVCTutorial>
 
Zuletzt bearbeitet:
Zeile 39. schrieb:
[ERROR] No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?

Will mich nicht zu weit aus dem Fenster lehnen, da ich selbst noch Anfänger auf dem Gebiet bin, aber kann es sein, dass
Code:
javac -Version
in der cmd bei dir einen Fehler wirft von wegen Befehl ist nicht bekannt.?

Wenn ja, dann hast du wahrscheinlich den Path nicht korrekt angepasst. Dort müsste dann sowas stehen wie
Code:
%JAVA_HOME%/bin


Wie gesagt: ist nur eine Vermutung, bitte mich nicht gleich zerfleischen!

Grüße

J.
 
Zuletzt bearbeitet:
Bin über jeden Tipp dankbar :)

Java_home ist nicht aufs bin sondern direkt aufs jdk Verzeichnis gesetzt. Wenn ich mir jetzt diverse Threads zu diesem Thema anschaue, scheint dies richtig zu sein.

javac -version funktioniert tatsächlich nicht, jedoch java -version. Javac gibt es bei mir im bin-Verzeichnis auch nicht, sodass dies denke auch nicht funktionieren sollte, wenn ich java_home auf das bin-Verzeichnis setze.

Über weitere Ideen bin ich dankbar :)
 
Halleluja... "Build success"

Hatte zunächst das maven compiler plugin zurück auf 3.1 gestellt und unter configuration folgendes eingetragen: <fork>true</fork>
Dadurch kam nur noch der Hinweis, dass javac nicht automatisch gefunden werden konnte. Daraufhin habe ich nochmal ein neues jdk runter geladen, java_home neu gesetzt und siehe da, es klappt....

Ich war überzeut ich hätte ein jdk installiert und kein jre zumal ich unter meinen Setups auch nur ein jdk (jdk-8u65-windows-x64.exe) gefunden habe und die Version mittels java -version stimmte überein. Schon seltsam.

Jedenfalls vielen Dank für eure Unterstützung!
 
Sowas passiert mir auch ab und zu, da ich mit den Pfaden gern mal Probleme habe.

Soweit ich mich erinnere gehört zu einer vollständigen Java Installation immer
%JAVA_HOME% = C:\Programme\Java\jdk-version
und
an die Variable Path "%JAVA_HOME%/bin;" anhängen
Dann sollte auch das Ding mit javac -version kein Problem mehr sein.


Ich glaube letzteres scheint bei dir das Problem gewesen zu sein, was durch die Neuinstallation vlt automatisch behoben wurde?

Ich war überzeut ich hätte ein jdk installiert und kein jre zumal ich unter meinen Setups auch nur ein jdk (jdk-8u65-windows-x64.exe)
Ich habe trotzdem immer noch ein JRE mit drauf und das sogar noch in 32 und 64 Bit.. einige Programme haben bei mir sonst manchmal Probleme weil sie mit dem JDK inklusivem JRE nix anfangen können oder mit der 64 Bit Version, ich glaube sogar Tomcat und Ant brauchen speziell ein JRE und kein JDK.

Aber wenn es jetzt funktioniert ist es ja toll^^
 
Zuletzt bearbeitet:
Zurück
Oben