如何使cxf-codegen插件在Java 9上工作?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (1)
  • 关注 (0)
  • 查看 (416)

我一直在努力让cxf-codegen插件在Java 9上工作,但有一些阻力。到目前为止,我已经将java.se.ee添加到运行时模块中,并向maven添加了必要的依赖项。

但是,当我试图构建我的源代码时,我会得到以下错误:

DefaultValidationEventHandler: [ERROR]: unexpected element (uri:"http://cxf.apache.org/tools/plugin", local:"databinding"). Expected elements are <{}databinding>,<{}frontend> 
 Location:  node: [databinding: null]
apr. 21, 2018 8:23:57 EM org.apache.cxf.tools.wsdlto.core.PluginLoader loadPlugin
ALLVARLIG: Tools plugin jar:file:/C:/Users/Daniel/.m2/repository/org/apache/cxf/cxf-tools-wsdlto-core/3.2.4/cxf-tools-wsdlto-core-3.2.4.jar!/META-INF/tools-plugin.xml load failed

有什么可能导致这种情况的原因,或者如何解决它?

提问于
用户回答回答于

遇到同样的问题,我最终更改了插件配置并显式地添加了所需的模块:

 <plugin>
     <groupId>org.apache.cxf</groupId>
     <artifactId>cxf-codegen-plugin</artifactId>
     <version>3.2.4</version>
     <configuration>
         <additionalJvmArgs>--add-modules java.xml.bind,java.xml.ws</additionalJvmArgs>
         <fork>once</fork>
     </configuration>
 </plugin>

它似乎适用于Java 9/10,但肯定不会适用于Java 11。

扫码关注云+社区

领取腾讯云代金券