Java 在Maven构建中组合QueryDSL和JaxWS代码生成

Java 在Maven构建中组合QueryDSL和JaxWS代码生成,java,maven,querydsl,Java,Maven,Querydsl,编辑:我现在将项目拆分为其组件部分,结果发现QueryDSL和JaxWS都是无辜的。这个问题存在于项目的其他地方。来自QueryDSL的错误消息是一个表面问题,但不要破坏构建 我的项目使用来自QueryDSL(JPA查询)和JaxWS(来自WSDL的web服务客户端代码生成)的代码生成 运行Maven构建时,QueryDSL代码生成阶段会产生大量错误,因为它试图处理引用生成的web服务客户端的服务类。例如: [INFO] --- jaxws-maven-plugin:1.12:wsimport

编辑:我现在将项目拆分为其组件部分,结果发现QueryDSL和JaxWS都是无辜的。这个问题存在于项目的其他地方。来自QueryDSL的错误消息是一个表面问题,但不要破坏构建


我的项目使用来自QueryDSL(JPA查询)和JaxWS(来自WSDL的web服务客户端代码生成)的代码生成

运行Maven构建时,QueryDSL代码生成阶段会产生大量错误,因为它试图处理引用生成的web服务客户端的服务类。例如:

[INFO] --- jaxws-maven-plugin:1.12:wsimport (default) @ Project---
[INFO]
[INFO] --- maven-apt-plugin:1.0:process (default) @ Project---
/home/adrian/test/Project/src/main/java/uk/co/humboldt/Project/Service/Inspect/Inspect.java:25: package org.supplier.webservice.contractservice does not exist
import org.supplier.webservice.contractservice.ArrayOfString;
我已尝试从QueryDSL处理中排除服务类:

 <plugin>
    <groupId>com.mysema.maven</groupId>
    <artifactId>maven-apt-plugin</artifactId>
    <version>1.0</version>
    <executions>
      <execution>
          <goals>
              <goal>process</goal>
          </goals>
          <configuration>
             <outputDirectory>target/generated-sources/java</outputDirectory>
             <processor>com.mysema.query.apt.jpa.JPAAnnotationProcessor</processor>
             <options>
               <querydsl.excludedPackages>uk.co.humboldt.Project.Service</querydsl.excludedPackages>
             </options>
           </configuration>
         </execution>
     </executions>
  </plugin>

我尝试过使用
buildhelper
like添加源文件,但没有改变任何东西。有什么建议吗?我怀疑将我的域对象和查询类拆分到一个单独的JAR可以解决问题,但我更愿意在一个POM中修复它。

APT代码生成失败了吗,还是只是收到了警告?querydsl.excludePackages没有限制要分析的源文件,只是跳过用于Q类型序列化的包。APT代码生成看起来已经成功,因此错误可能只是表面问题。我想我必须把项目分成更小的部分才能弄清问题的真相。我认为这是一个表面问题,我不确定你是否能避免这些错误,你在第一次APT迭代时也会遇到引用Q-TYPE的错误。这是一个纯粹的表面问题。我已将该项目分为三个模块:一个模块包含JPA实体和QueryDSL,一个模块包含JaxWS客户端,另一个模块包含主应用程序代码。构建失败的是应用程序项目。是的,maven编译器插件的编译错误不是由Querydsl APT执行引起的。APT代码生成失败还是只是收到警告?querydsl.excludePackages没有限制要分析的源文件,只是跳过用于Q类型序列化的包。APT代码生成看起来已经成功,因此错误可能只是表面问题。我想我必须把项目分成更小的部分才能弄清问题的真相。我认为这是一个表面问题,我不确定你是否能避免这些错误,你在第一次APT迭代时也会遇到引用Q-TYPE的错误。这是一个纯粹的表面问题。我已将该项目分为三个模块:一个模块包含JPA实体和QueryDSL,一个模块包含JaxWS客户端,另一个模块包含主应用程序代码。是的,maven编译器插件的编译错误不是由Querydsl APT执行引起的。
[INFO] --- maven-compiler-plugin:2.3.2:compile (default-compile) @ Project---
[INFO] Compiling 590 source files to /home/adrian/test/Project/target/classes
[INFO] -------------------------------------------------------------
[ERROR] COMPILATION ERROR :
[INFO] -------------------------------------------------------------
[ERROR] Failure executing javac, but could not parse the error:
55 errors