Maven Apache Camel CXF无法使用wsdl2java生成源生成Java类?

Maven Apache Camel CXF无法使用wsdl2java生成源生成Java类?,maven,apache-camel,Maven,Apache Camel,下面给出了我的pom.xml 我已经从生成的文件夹生成了这个示例,但没有在目标文件夹中创建。 我已经尝试了下面报告的每一条指令,但是这些类并没有在目标文件夹中生成 在本例中,我们在 生成源阶段 通过运行mvn generate sources,CXF将在 指定的目录。每个元素 对应于为其生成构件的WSDL。WSDL 位置通过选项指定 遵循Maven标准目录布局,如果您计划 将WSDL打包到您正在创建的JAR中,您将需要WSDL 在上面的/src/main/resources/(或者在下面的子文件

下面给出了我的pom.xml

我已经从生成的文件夹生成了这个示例,但没有在目标文件夹中创建。 我已经尝试了下面报告的每一条指令,但是这些类并没有在目标文件夹中生成

在本例中,我们在 生成源阶段

通过运行mvn generate sources,CXF将在 指定的目录。每个元素 对应于为其生成构件的WSDL。WSDL 位置通过
选项指定

遵循Maven标准目录布局,如果您计划 将WSDL打包到您正在创建的JAR中,您将需要WSDL 在上面的/src/main/resources/(或者在下面的子文件夹中) 如果需要,它可以避免将资源放在JAR的根目录中);其他的 使用/src/main/config文件夹将WSDL保留在JAR之外


4.0.0
org.apache.camel
骆驼事件示例报告
1.0.0-SNAPSHOT
驼峰Web应用程序
将骆驼路线部署为战争的骆驼项目
http://www.myorganization.org
战争
UTF-8
UTF-8
2.7.0
release.fusesource.org
FuseSource发布存储库
http://repo1.maven.org/maven2
假的
真的
ea.fusesource.org
FuseSource社区早期访问发布库
http://repo1.maven.org/maven2
假的
真的
release.fusesource.org
FuseSource发布存储库
http://repo1.maven.org/maven2
假的
真的
ea.fusesource.org
FuseSource社区早期访问发布库
http://repo1.maven.org/maven2
假的
真的
org.apache.camel
驼芯
2.15.1
org.apache.camel
骆驼河
2.15.1
org.apache.camel
骆驼jms
2.15.1
org.apache.activemq
activemq骆驼
5.6.0
org.springframework
spring上下文
4.1.6.1发布
org.apache.camel
骆驼泉
2.15.1
org.apache.camel
骆驼型cxf
2.15.1
org.apache.cxf
cxf rt传输http jetty
3.0.4
javax.servlet
javax.servlet-api
3.1.0
假如
org.apache.axis
轴
1.4
org.apache.axis
axis jaxrpc
1.4
org.apache.axis
axis saaj
1.4
轴
axis-wsdl4j
1.5.1
公地发现
公地发现
0.4
log4j
log4j
1.2.14
org.mortbay.jetty
maven jetty插件
7.0.0pre3
org.apache.cxf
cxf-codegen插件
2.6.1
生成源
生成源
${basedir}\target\generated\
${basedir}\src\main\webapp\WEB-INF\wsdl\report\u incident.wsdl
wsdl2java

在我的许多项目中,我都有相同的要求,通常我使用如下pom:

<plugin>
        <groupId>org.apache.cxf</groupId>
        <artifactId>cxf-codegen-plugin</artifactId>
        <version>3.0.4</version>
        <executions>
            <execution>
                <id>generate-sources</id>
                <phase>generate-sources</phase>
                <configuration>
                    <wsdlOptions>
                        <wsdlOption>
                            <wsdl>${basedir}/src/main/resources/wsdl/Authentication.wsdl</wsdl>
                            <wsdlLocation>classpath:wsdl/Authentication.wsdl</wsdlLocation>
                            <extraargs>
                                <extraarg>-client</extraarg>
                            </extraargs>
                        </wsdlOption>                               
                    </wsdlOptions>
                </configuration>
                <goals>
                    <goal>wsdl2java</goal>
                </goals>
            </execution>
        </executions>
    </plugin>
更重要的是,您可以省略
标记,从而保留默认值。更多参考资料。

尝试使用正斜杠(/)而不是反斜杠(\),即


${basedir}/target/generated/cxf/
${basedir}/src/main/webapp/WEB-INF/wsdl/report\u incident.wsdl

已更新。尝试删除标记。我尝试删除标记,但它不起作用。我通过引用此创建了此示例。我已编辑了sourceRoot路径,您可以尝试使用它吗。
<plugin>
        <groupId>org.apache.cxf</groupId>
        <artifactId>cxf-codegen-plugin</artifactId>
        <version>3.0.4</version>
        <executions>
            <execution>
                <id>generate-sources</id>
                <phase>generate-sources</phase>
                <configuration>
                    <wsdlOptions>
                        <wsdlOption>
                            <wsdl>${basedir}/src/main/resources/wsdl/Authentication.wsdl</wsdl>
                            <wsdlLocation>classpath:wsdl/Authentication.wsdl</wsdlLocation>
                            <extraargs>
                                <extraarg>-client</extraarg>
                            </extraargs>
                        </wsdlOption>                               
                    </wsdlOptions>
                </configuration>
                <goals>
                    <goal>wsdl2java</goal>
                </goals>
            </execution>
        </executions>
    </plugin>
<extraargs>
    <extraarg>-client</extraarg>
</extraargs>
<configuration>
           <sourceRoot>${basedir}/target/generated/cxf/</sourceRoot>
                        <wsdlOptions>
                            <wsdlOption>
                                <wsdl>${basedir}/src/main/webapp/WEB-INF/wsdl/report_incident.wsdl</wsdl>
                            </wsdlOption>
                        </wsdlOptions>
    </configuration>