eclipse下maven打包是出现如下错误:
[ERROR] D:xxxsrcmainjavacomdada ransactionserviceKmService.java:[4,30] 错误: 程序包com.sun.istack.internal不存在
[ERROR] D:xxxsrcmainjavacomdada ransactionserviceKBUserService.java:[8,30] 错误: 程序包com.sun.istack.internal不存在
[ERROR] D:xxxsrcmainjavacomdadautilBase64Util.java:[3,15] BASE64Decoder是内部专用 API, 可能会在未来发行版中删除
[ERROR] D:xxxsrcmainjavacomdadautilBase64Util.java:[4,15] BASE64Encoder是内部专用 API, 可能会在未来发行版中删除
[ERROR] D:xxxsrcmainjavacomdada ransactionserviceimplKmServiceImpl.java:[8,30] 错误: 程序包com.sun.istack.internal不存在
[ERROR] D:xxxsrcmainjavacomdadautilIDCard.java:[10,58] ParseException是内部专用 API, 可能会在未来发行版中删除
[ERROR] D:xxxsrcmainjavacomdadautilStrUtil.java:[17,30] 错误: 程序包com.sun.istack.internal不存在
[ERROR] D:xxxsrcmainjavacomdada ransactionserviceimplUserServiceImpl.java:[42,30] 错误: 程序包com.sun.istack.internal不存在
[ERROR] D:xxxsrcmainjavacomdada ransactionserviceKmService.java:[34,16] 错误: 找不到符号
[ERROR] 符号: 类 NotNull
位置: 接口 KmService
D:xxxsrcmainjavacomdada ransactionserviceKmService.java:[34,39] 错误: 找不到符号
[ERROR] 符号: 类 NotNull
位置: 接口 KmService
D:xxxsrcmainjavacomdada ransactionserviceKmService.java:[34,86] 错误: 找不到符号
[ERROR] 符号: 类 NotNull
位置: 接口 KmService
-----------------
是因为代码里使用了 sun 私有包中 @NotNull注解导致,只要引入相应的sun私有包就行了!!
解决办法:
KmService.java:[4,30] 错误: 程序包com.sun.istack.internal不存在
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.5.1</version> <configuration> <compilerArgs> <!-- 过期的方法的警告--> <arg>-Xlint:deprecation</arg> </compilerArgs> <compilerArguments> <!-- 是否输出所有的编译信息(包括类的加载等)--> <!--<verbose />--> <!-- 解决maven命令编译报错,因为rt.jar 和jce.jar在jre的lib下面,不在jdk的lib下面, 导致maven找不到(java7以后会出现这个问题),将这2个jar包拷贝到jdk的lib下面估计也好使--> <bootclasspath>${java.home}lib t.jar;${java.home}libjce.jar</bootclasspath> </compilerArguments> </configuration> </plugin>