当前位置: 首页 > 面试题库 >

Maven指向JRE而不是JDK

公冶桐
2023-03-14
问题内容

我一直在与一个同事一起解决我刚刚加入的一个新项目遇到的问题。长话短说,Maven无法正确构建我的.war文件。当我向我的同事提供战争档案时,他会遇到与我相同的问题,当他向我提供其已编译的.war文件时,一切都会正常进行。我们俩都在同一个源上工作。因此,我正在尝试正确地安装Maven(与他相同),我们现在都具有相同版本的Maven。但是,我认为maven错误地查看了java_home。

当我执行mvn -version命令时,得到以下信息:

C:\java\KME_workspace\CU-KME>mvn -version
Apache Maven 3.0.4 (r1232337; 2012-01-17 03:44:56-0500)
Maven home: C:\java\tools\apache-maven-3.0.4
Java version: 1.6.0_45, vendor: Sun Microsystems Inc.
Java home: C:\java\jdks\jdk1.6.0_45\jre
Default locale: en_US, platform encoding: Cp1252
OS name: "windows 7", version: "6.1", arch: "amd64", family: "windows"

我系统的JAVA_HOME变量正确设置为C:\ java \ jdks \ jdk1.6.0_45。

有人知道我的maven正在查看jre,如何正确将其设置回JDK?我也有可能正确地看待问题,因此,如果您有任何想法,那将是很好的。

谢谢。

正如某些人所指出的那样,在Maven版本的Java主页中的JRE参考对我而言是一个红鲱鱼兔子洞。经过进一步测试,我得到了一些有趣的新信息。我直接从命令行运行maven命令。我使用eclipse从svn存储库中签出代码,并尝试在该代码上运行maven包,而.war不能正确构建。但是,如果我在eclipse中进行团队导出到新目录,然后在该目录上运行maven包,则它可以构建.war并能完美运行。据我了解,Eclipse中的团队导出会删除导出目录中的所有Subversion文件。有人对如何解决这个问题有任何想法吗?


问题答案:

从《Maven属性指南》中:

$ {java.home}指定要获取的当前JRE_HOME环境使用的路径以及相对路径,例如:$ {java.home} ../ bin /
java.exe

java.home属性与JAVA_HOME环境设置不同。它实际上是动态属性,向您显示哪个JRE正在运行您的代码。

尝试正确设置java.home属性,然后查看它是否有效。



 类似资料:
  • 多谢了。 正如一些人所指出的,maven版本中java home中的JRE引用对我来说是一个红鲱鱼兔子洞。经过进一步的测试,我有了一些新的有趣的信息。我直接从命令行运行maven命令。我用eclipse从svn存储库中签出代码,并尝试在该代码上运行maven包,但.war没有正确构建。但是,如果我在eclipse中将一个团队导出到一个新目录,并在该目录上运行maven包,那么它将构建.war fi

  • 然后卸载OpenJDK并安装Oracle JDK8,现在运行时 JAVA_HOME环境变量定义不正确运行此程序需要此环境变量nb:JAVA_HOME应该指向JDK,而不是JRE 我正在运行Linux Mint 19,我确实遇到了一些与这个问题相关的Stackoverflow问题。大多数与Windows有关,一些与Linux有关。建议运行的Linux

  • 我对CS非常陌生,对UNIX/Bash词汇非常陌生。 我目前正在尝试安装Maven,我犯了一些错误,复制粘贴了旧的安装说明(版本号不正确),现在整个过程是如此混乱。我首先尝试按照网站上给出的说明进行操作,但没有成功,然后我又尝试了其他几个,现在我担心我会因为遵循不同的说明而陷入混乱。 现在我已经到了一个地步,如果我输入,我会得到以下信息: JAVA_HOME环境变量未正确定义 此环境变量是运行此程

  • 每当我点击eclipse图标时,我就会发现jvm的1.6版本不适合这个产品。需要1.7或更高版本。 我在系统中的其他java应用程序都在使用JRE 1.6,所以我不想改变这一点。 我的系统中也有JDK 7,但如何将eclipse指向JDK 1.7而不是默认的1.6呢。 谢啦

  • 我下载了jdk-9.0.1_linux-x64_bin。焦油gz和jre-9.0.1_linux-x64_bin。焦油来自链接的gzhttp://www.oracle.com/technetwork/java/javase/downloads/index.html.将它们提取出来,并在/usr/local/java中发布。然后编辑/etc/profile以添加 整个文件看起来像 然后输入以下命令

  • 您好,感谢您能提供的任何帮助。 最重要的是,我已经重新安装了java和maven,并多次重启了我的计算机和命令行。