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

Maven中的Java版本不匹配

訾俊名
2023-03-14
问题内容

在尝试使用Maven 在命令行上 构建应用程序时,我遇到了一个奇怪的问题。(我在SO上看到的其他问题是指在Eclipse或其他一些IDE中进行构建)

当我尝试构建时,maven抱怨它无法在tools.jar中找到Javac。查看给定的位置,很明显Maven正在JRE目录中,但是,我似乎无法让Maven指向我的JDK的正确Java_home-
关于如何执行此操作的任何想法?

环境概况

JAVA_HOME=C:\jdk1.6.0_27
Path=C:\jdk1.6.0_27\bin;...... (showing the jdk is the first thing on the path)

D:\> javac -version
javac 1.6.0_27  <-- This is correct

D:\>java -version
java version "1.6.0_31"  <-- wtf?

D:\>mvn -version
Apache Maven 2.2.1 (r801777; 2009-08-07 03:16:01+0800)
Java version: 1.6.0_31                       <--- This is the problem - Where
Java home: C:\Program Files (x86)\Java\jre6  <--- does Maven get this from?

欢迎您提出任何建议。


问题答案:

尝试将您的maven目录(例如D:\ maven-2.2.1 \ conf)中的toolchains.xml配置为您的Java版本

<toolchains>
<toolchain>
    <type>jdk</type>
    <provides>
        <version>1.5</version> <!--This should be same as is configured via the toolchains plugin -->
        <vendor>ibm</vendor> <!--This should be same as is configured via the toolchains plugin -->
    </provides>
    <configuration>
        <jdkHome>C:\Program Files\Java\jdk1.5.0</jdkHome>
    </configuration>
</toolchain>
</toolchains>


 类似资料:
  • Soap请求生成的Java应用程序[失败] SoapUI生成的Soap请求[成功] 如何将命名空间 uri “http://schemas.xmlsoap.org/soap/envelope/” 更改为“http://www.w3.org/2003/05/soap-envelope”。我没有创建任何客户端,我刚刚创建了java类并运行,由于上面的uri链接,我能够发送请求并获得错误代码响应。我发现

  • 我使用低于IDE使用的系统环境JAVA_HOME(1.8)启动NetBeans IDE12.0(14)。Maven执行的IDE输出窗口似乎显示项目是用JDK14的JAVA_HOME运行的,以这种方式运行项目文件。 但是exec-maven-plugin在 这似乎表明Maven在IDE中运行在1.8下,忽略了IDE自己的重写设置JAVA_HOME 14。它使用JAVA_HOME中设置的JDK,因为如

  • 假设我的客户支持TLS V1。0,1.1和1.2。远程站点支持TLS V1。0和1.1。双方都支持相同的密码。 我的问题是: 1-据我所知,我将始终使用我现有的最高TLS版本启动通信。在这种情况下,我将如何与另一边联系? 2-以下是客户端和服务器之间的Wireshark客户端HELLO捕获,如上所述。 这种连接尝试最终导致“无法创建SSL/TLS安全通道”。我怀疑这与“TLSV1.1记录层”和“版

  • 我目前在tensorflow中使用RNN时遇到了这个错误: 这个程序需要协议缓冲区运行库的3.3.0版本,但是安装的版本是2.6.1。请更新您的库。如果您自己编译程序,请确保您的标头来自与链接时库相同的协议缓冲区版本。(版本验证失败在"bazel-out/local_linux-opt/genfile/tenorflow/contrib/tensor_forest/proto/fertile_st

  • 我目前在我的本地机器中使用jdk版本为11,使用JAVA_HOME设置。 我需要运行一个java_version为9的maven项目。要进行同样的操作,请参考https://www.baeldung.com/maven-java-version 这是我的pom.xml文件 然后,我运行命令“mvn clean install”,生成的jar文件在其清单文件中的java-version为11。下面是

  • 当我初始化一个新项目,然后启动Xcode仿真器时,会得到以下消息: React-本机版本不匹配 Javascript版本0.50.1本机版本:0.50.0 确保您已经重新构建了本机代码。... 有没有人知道这里发生了什么,可以帮助我?