【发布时间】:2016-06-21 09:33:51
【问题描述】:
我正在尝试将 maven 中的现有项目与查询 dsl 集成我添加了如下依赖项`
<dependency>
<groupId>com.mysema.querydsl</groupId>
<artifactId>querydsl-apt</artifactId>
<version>2.5.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>com.mysema.querydsl</groupId>
<artifactId>querydsl-jpa</artifactId>
<version>2.5.0</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.6.1</version>
</dependency>`
并且还根据文档配置了上述内容,并且 Maven Clean 构建成功,但是当我执行上面的 Maven 安装错误时它失败了
<build>
<pluginManagement>
<plugins>
<plugin>
<groupId>com.mysema.maven</groupId>
<artifactId>maven-apt-plugin</artifactId>
<version>1.0.3</version>
<executions>
<execution>
<goals>
<goal>process</goal>
</goals>
<configuration>
<outputDirectory>target/generated-sources/java</outputDirectory>
<processor>com.mysema.query.apt.jpa.JPAAnnotationProcessor</processor>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</pluginManagement>
</build>
当我执行 Maven 安装 - BUILD FAILURE 并且无法解析查询 DSL 的依赖项时,maven 不应该自行执行此操作。
[WARNING] The POM for com.mysema.querydsl:querydsl-apt:jar:2.5.0 is missing, no dependency information available
[WARNING] The POM for com.mysema.querydsl:querydsl-jpa:jar:2.5.0 is missing, no dependency information available
[INFO] BUILD FAILURE
我错过了什么?
【问题讨论】:
-
您可能想尝试更新版本。 2.x 很旧,没有维护。此外,
maven-apt-plugin现在是apt-maven-plugin。 -
@johnktims 是的,我没有注意到,谢谢你知道如何解决我遇到的依赖问题吗?
-
我创建了一个示例项目,复制到您发布的配置中并删除了
<pluginManagement>标记并生成了 q 类。我确实必须添加<dependency><groupId>org.hibernate.javax.persistence</groupId><artifactId>hibernate-jpa-2.1-api</artifactId><version>1.0.0.Final</version></dependency>>以便我可以用@Entity注释我的实体。
标签: java maven querydsl maven-dependency-plugin maven-dependency