- 在新创建项目遇到 “cannot resolve symbol…”问题,解决方法(自己项目的解决办法,其他可能不同):
- 解决报错java.lang.TypeNotPresentException: Type javax.xml.bind.JAXBContext not present
是由于JDK版本引发的问题:原因是我在创建模块的时候没有选择JDK8,而选择了JDK11。所以将JDK改为8即可,或者如下:
具体原因:因为JAXB-API是java ee的一部分,在jdk11中没有在默认的类路径中。从jdk9开始java引入了模块的概念, 可以使用模块命令–add-modles java.xml.bind引入jaxb-api。也可以选择另一种解决方法,在maven里面加入下面依赖,可以解决这个问题:
<dependency>
<groupId>javax.xml.bind</groupId>
<artifactId>jaxb-api</artifactId>
<version>2.3.0</version>
</dependency>
<dependency>
<groupId>com.sun.xml.bind</groupId>
<artifactId>jaxb-impl</artifactId>
<version>2.3.0</version>
</dependency>
<dependency>
<groupId>org.glassfish.jaxb</groupId>
<artifactId>jaxb-runtime</artifactId>
<version>2.3.0</version>
</dependency>
<dependency>
<groupId>javax.activation</groupId>
<artifactId>activation</artifactId>
<version>1.1.1</version>
</dependency>
具体参考:解决报错java.lang.TypeNotPresentException: Type javax.xml.bind.JAXBContext not present
- 依赖导不进去还有一种可能,如下依赖属于本地,而本地的项目clientmodel并没有被创建,自然也就导不进去,这属于本人大意错误