Jenkins部署Maven项目时提示找不到JDK问题的解决方案

背景描述

今天我将一个Maven Web项目在Jenkins中配置自动构建部署时,遇到报错:

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile (default-compile) on project personal: Compilation failure
[ERROR] No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?

一开始不明白指的什么意思,在stackoverflow上查了一下,找到了这样一个链接,虽然提问者问的是Eclipse中Maven运行的问题,但是最后面提问者的解决方案给我了一个启发。

http://stackoverflow.com/questions/19655184/no-compiler-is-provided-in-this-environment-perhaps-you-are-running-on-a-jre-ra

具体细节和解决方案

这肯定是Maven在构建时查找JDK遇到了障碍,可能是某处环境变量配置没有到位。我pom.xml中关于maven-compiler-plugin编译插件的内容是这样的:


    org.apache.maven.plugins
    maven-compiler-plugin
    3.1
    
        1.7
        1.7
        
            ${endorsed.dir}
        
    

stackoverflow上的答案给我的启发就是我这里中的JDK配置不明确,需要指定具体的地址:


    org.apache.maven.plugins
    maven-compiler-plugin
    3.1
    
        true
        C:\Program Files\Java\jdk1.8.0_66\bin\javac.exe
    

在将pom.xml修改之后,Jenkins确实构建成功了。

这个问题和我之前写的博客使用Ant工程创建Jenkins Job时可能遇到的几个问题中的"2. Java EE server问题"有相似之处,那边需要明确的指明Server所在目录,这里也需要明确的指明JDK所在目录。


Jenkins部署Maven项目时提示找不到JDK问题的解决方案

你可能感兴趣的:(Other)