JAVA10中的 package javax.annotation is not visible错误

 问题:spring框架中存在大量注解,如 @Resource,之前使用java1.7正常,升级到1.10后,报错

Error:(7, 13) java: package javax.annotation is not visible
  (package javax.annotation is declared in module java.xml.ws.annotation, which is not in the module graph)
Error:(8, 13) java: package javax.annotation is not visible
  (package javax.annotation is declared in module java.xml.ws.annotation, which is not in the module graph)

  

原因:

注释位于模块java.xml.ws.annotation中。因为它是一个Java EE模块,所以不推荐使用它。在Java 9中删除了,并且默认情况下不会解析,因此需要手动添加它--add-modules

在Java 10中,模块将完全消失,并且--add-modules会失败,因为java.xml.ws.annotation不再存在。最好的解决方案是立即用第三方依赖替换它。使用Java Commons Annotations可以在Maven Central上找到它:

<dependency>
    <groupId>javax.annotation</groupId>
    <artifactId>javax.annotation-api</artifactId>
    <version>1.3.1</version>
</dependency>

  

第二种方法:切换JDK到1.7.。。

 

posted @ 2018-09-21 14:53  樊少2018  阅读(1962)  评论(0编辑  收藏  举报