0

我正在尝试构建我的 maven 项目,该项目从 .xds 模式文件创建 POJO。我正在使用 cxf-xjc-plugin 使用以下插件定义执行 xjc。

     <plugin>
            <groupId>org.apache.cxf</groupId>
            <artifactId>cxf-xjc-plugin</artifactId>
            <version>3.3.1</version>
            <executions>
                <execution>
                    <id>xjc</id>
                    <phase>generate-sources</phase>
                    <goals>
                        <goal>xsdtojava</goal>
                    </goals>
                    <configuration>
                    <sourceRoot>src/main/java/</sourceRoot>
                        <xsdOptions>
                            <xsdOption>
                                <xsd>src/main/resources</xsd>
                                <packagename>com.myapp.myXmlPojo</packagename>
                            </xsdOption>
                        </xsdOptions>
                    </configuration>
                </execution>
            </executions>                    
        </plugin>

即使存在“src/main/java”目录,它也会失败并出现以下错误:

[DEBUG] 线程“main”com.sun.tools.xjc.BadCommandLineException 中的异常:懦弱地拒绝写入 com.sun.tools.xjc.Options 中不存在的目录“src/main/java” [DEBUG]。 parseArgument(Options.java:524) [DEBUG] at com.sun.tools.xjc.Options.parseArguments(Options.java:827) [DEBUG] at org.apache.cxf.maven_plugin.XSDToJavaRunner.run(XSDToJavaRunner.java: 170) [调试] 在 org.apache.cxf.maven_plugin.XSDToJavaRunner.main(XSDToJavaRunner.java:360)

我尝试删除 src 文件夹并观察到它重新创建了 src/main/java 但不复制 POJO 并因上述错误而失败。请指教。

4

1 回答 1

0

它可能不喜欢您src/main/java用作编写生成的 java 类的位置,因为这是非生成类的默认位置。尝试将此值更改为目标文件夹下的内容,例如${basedir}/target/generated/src/main/java

于 2021-09-09T00:08:50.780 回答