Error: java: 无法访问javax.inject.Provider 找不到javax.inject.Provider的类文件

使用QueryDsl时,在Configuration配置类中初始化JPAQueryFactory时,报出如下错。
Error:(86, 39) java: 无法访问javax.inject.Provider 找不到javax.inject.Provider的类文件
Information:java: 某些输入文件使用了未经检查或不安全的操作。
Information:java: 有关详细信息, 请使用 -Xlint:unchecked 重新编译。

Configuration中的代码

@Bean
public JPAQueryFactory jpaQuery(EntityManager entityManager) {
  JPAQueryFactory jpaQueryFactory = new JPAQueryFactory(entityManager);
  return jpaQueryFactory;
}

解决方案:
pom.xml 中引入

<dependency>
  <groupId>javax.injectgroupId>
  <artifactId>javax.injectartifactId>
  <version>1version>
dependency>

要是还不行的话,引入

<dependency>
  <groupId>javax.servletgroupId>
  <artifactId>javax.servlet-apiartifactId>
  <scope>providedscope>
dependency>
<dependency>
  <groupId>com.google.injectgroupId>
  <artifactId>guiceartifactId>
  <version>3.0version>
dependency>
<dependency>
  <groupId>javax.injectgroupId>
  <artifactId>javax.injectartifactId>
  <version>1version>
dependency>

你可能感兴趣的:(Spring)