Java 如何使用Spring Boot运行cxf xjc插件?

Java 如何使用Spring Boot运行cxf xjc插件?,java,spring,spring-boot,cxf,cxf-xjc-plugin,Java,Spring,Spring Boot,Cxf,Cxf Xjc Plugin,我正在尝试设置一个简单的项目,它应该使用cxfxjc插件生成xsdtojava。该项目还使用spring boot mvn包期间的结果: [INFO] Building jar: /tmp/cxf-xjc-plugin3386923426289303800.jar [DEBUG] Error: Could not find or load main class org.apache.cxf.maven_plugin.XSDToJavaRunner [DEBUG] Caused by: java.

我正在尝试设置一个简单的项目,它应该使用
cxfxjc插件
生成
xsdtojava
。该项目还使用
spring boot

mvn包期间的结果

[INFO] Building jar: /tmp/cxf-xjc-plugin3386923426289303800.jar
[DEBUG] Error: Could not find or load main class org.apache.cxf.maven_plugin.XSDToJavaRunner
[DEBUG] Caused by: java.lang.ClassNotFoundException: org.apache.cxf.maven_plugin.XSDToJavaRunner
这很奇怪,因为在classpath上我可以清楚地看到
XSDToJavaRunner.class

我的java项目目录是:
javaExecutable=/usr/lib/jvm/java-11-openjdk-amd64/bin/java
,以及

java-version
显示:
openjdk64位服务器虚拟机(构建10.0.2+13-Ubuntu-1ubuntu0.18.04.3,混合模式)

我试着将
cxfxjc插件
,几个
jaxb-*
库扔到
maven节点中,如下所示,但错误仍然相同。我错过了什么

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>com.test</groupId>
    <artifactId>cxfxjc-test</artifactId>
    <version>1.0.0</version>

    <parent>
       <groupId>org.springframework.boot</groupId>
       <artifactId>spring-boot-starter-parent</artifactId>
       <version>2.0.5.RELEASE</version>
    </parent>

    <dependencies>
        <dependency>
            <groupId>javax.xml.bind</groupId>
            <artifactId>jaxb-api</artifactId>
            <version>2.2.11</version>
        </dependency>
        <dependency>
            <groupId>com.sun.xml.bind</groupId>
            <artifactId>jaxb-core</artifactId>
            <version>2.2.11</version>
        </dependency>
        <dependency>
            <groupId>com.sun.xml.bind</groupId>
            <artifactId>jaxb-impl</artifactId>
            <version>2.2.11</version>
        </dependency>

        <dependency>
            <groupId>org.apache.cxf</groupId>
            <artifactId>cxf-core</artifactId>
            <version>3.2.6</version>
        </dependency>

        <dependency>
            <groupId>org.apache.cxf</groupId>
            <artifactId>cxf-xjc-plugin</artifactId>
            <version>3.2.2</version>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.cxf</groupId>
                <artifactId>cxf-xjc-plugin</artifactId>
                <version>3.2.2</version>
                <executions>
                    <execution>
                        <id>generate-sources</id>
                        <phase>generate-sources</phase>
                        <goals>
                            <goal>xsdtojava</goal>
                        </goals>
                        <configuration>
                            <xsdOptions>
                                <xsdOption>
                                    <xsd>src/main/resources/test.xsd</xsd>
                                </xsdOption>
                            </xsdOptions>
                        </configuration>
                    </execution>
                </executions>

                <dependencies>
                    <dependency>
                        <groupId>org.apache.cxf</groupId>
                        <artifactId>cxf-xjc-plugin</artifactId>
                        <version>3.2.2</version>
                    </dependency>
                </dependencies>
            </plugin>
        </plugins>
    </build>
</project>

4.0.0
com.test
cxfxjc试验
1.0.0
org.springframework.boot
spring启动程序父级
2.0.5.1发布
javax.xml.bind
jaxb api
2.2.11
com.sun.xml.bind
jaxb内核
2.2.11
com.sun.xml.bind
jaxb impl
2.2.11
org.apache.cxf
cxf核心
3.2.6
org.apache.cxf
cxf xjc插件
3.2.2
org.apache.cxf
cxf xjc插件
3.2.2
生成源
生成源
xsdtojava
src/main/resources/test.xsd
org.apache.cxf
cxf xjc插件
3.2.2

看起来Ubuntu上的Java有些问题。今天对OpenJDK 64位服务器VM的更新(构建10.0.2+13-Ubuntu-1ubuntu0.18.04.4,混合模式)修复了这一问题

更新之前-cxf插件始终以分叉模式运行,并且无法在/tmp/中正确创建jar存档。写权限等方面没有问题,但出于某种原因,此存档中没有JAR,这就是为什么会出现ClassNotFoundException