一、问题描述
公司要把已有的代码迁移到云道平台,以前的纯javaWeb工程中的依赖包要改成maven仓库,代码的改造方面,除了添加pom.xml文件外,也没多大变化,但是在构建war文件时,提示了好多缺少依赖包的错误,一个个添加后,最后报了这个错
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile (default-compile) on project httpjsoncuvdb: Compilation failure: Compilation failure:
[ERROR] /data/jenkins-new/workspace/httpjsoncuvdb_0.0.1_build-Mamy7_4863/src/main/java/com/tydic/odsb/httpjson/ResourceServiceImpl.java:[102,48] cannot access javax.xml.rpc.Service
[ERROR] class file for javax.xml.rpc.Service not found
[ERROR] /data/jenkins-new/workspace/httpjsoncuvdb_0.0.1_build-Mamy7_4863/src/main/java/com/tydic/odsb/httpjson/ResourceServiceImpl.java:[103,29] cannot access javax.xml.rpc.Call
[ERROR] class file for javax.xml.rpc.Call not found
[ERROR] -> [Help 1]
[ERROR]
上网查了下,好多帖子都说是因为maven设置的jdk和项目需要的jdk版本不一致引起的,需要吧这两个版本匹配上。
<!-- 这种设置方式 -->
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
</properties>
<!-- 或者这种方式 -->
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<!-- <version>3.7.0</version> -->
<configuration>
<source>1.8</source>
<target>1.8</target>
<encoding>utf-8</encoding>
</configuration>
</plugin>
</plugins>
</build>
<!-- 再或者直接设置maven的settings.xml文件 -->
<!-- 配置方式请自行百度 设置maven的jdk版本 -->
我设置好后还是报同样的错误,后来我又仔细看了下日志发现在报这个错误之前还有两个报错
我开始以为是maven-compiler-plugin的错误引起的cannot access javax.xml.rpc.Service
class file for javax.xml.rpc.Service not found
后来觉得可能是这个错误是源头,就去查了一下
说是少了Axis包里面的jaxrpc.jar
添加好依赖后再次执行,问题解决。