Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
316 views
in Technique[技术] by (71.8m points)

java - Maven pointing to JRE instead of jdk

I've been working with a co-worker on a problem I have been experiencing on a new project I just joined. Long story short, maven isn't building my .war file correctly. When I give my co-worker my war file, he experiences the same problem I have, and when he gives me his compiled .war file, everything works. We are both working with the same source. So, I am trying to get maven setup correctly (the same as his), we both have the same version of maven now. However, I think maven is looking at the java_home incorrectly.

when I do an mvn -version command, I get the following:

C:javaKME_workspaceCU-KME>mvn -version
Apache Maven 3.0.4 (r1232337; 2012-01-17 03:44:56-0500)
Maven home: C:javaoolsapache-maven-3.0.4
Java version: 1.6.0_45, vendor: Sun Microsystems Inc.
Java home: C:javajdksjdk1.6.0_45jre
Default locale: en_US, platform encoding: Cp1252
OS name: "windows 7", version: "6.1", arch: "amd64", family: "windows"

My system's JAVA_HOME variable is set correctly to C:javajdksjdk1.6.0_45.

Anyone know my maven is looking at the jre, and how do I set it correctly back to the JDK? It's possible I am looking at the problem in correctly too, so if you have any ideas, that would be great.

Thanks.


As some noted, the JRE reference in the java home in the maven version was a red herring rabbit hole on my part. Upon further testing I have some new interesting information. I am running maven commands directly from the command line. I check out code from our svn repository with eclipse, and try to run a maven package on that code, and the .war doesn't build correctly. However, if I do a team export in eclipse to a new directory, and the run the maven package on that, it builds the .war fine and works perfectly. As I understand it, the team export in eclipse removes all the subversion files in the exported directory. Anyone have any ideas on how to solve this?

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)

From the Maven Properties Guide:

${java.home} specifies the path to the current JRE_HOME environment use with relative paths to get for example: ${java.home}../bin/java.exe

java.home property is not the same thing as JAVA_HOME environment setting. It is actually dynamic property showing you which JRE is running your code.?

Try setting the java.home property correctly and see if it works.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...