当前位置: 首页 > 知识库问答 >
问题:

找不到命名空间的目标工厂 - 使用 Jetty 创建 CXF 的超级 JAR

郎成弘
2023-03-14

我想为基于 CXF 的应用程序服务器创建一个超级 JAR。我想用java -jar从命令行运行服务器。在IDE中,我可以运行主类com.connexta.沙漠代码营地.服务器,但我没有正确地创建uber罐。

当我运行命令< code > Java-jar server-1.0-snapshot . jar 时,我得到

org.apache.cxf.service.factory.ServiceConstructionException
        at org.apache.cxf.jaxrs.JAXRSServerFactoryBean.create(JAXRSServerFactoryBean.java:215)
        at com.connexta.desertcodecamp.Server.<init>(Server.java:19)
        at com.connexta.desertcodecamp.Server.main(Server.java:33)
Caused by: org.apache.cxf.BusException: No DestinationFactory was found for the namespace http://cxf.apache.org/transports/http.
        at org.apache.cxf.bus.managers.DestinationFactoryManagerImpl.getDestinationFactory(DestinationFactoryManagerImpl.java:122)
        at org.apache.cxf.endpoint.ServerImpl.initDestination(ServerImpl.java:79)
        at org.apache.cxf.endpoint.ServerImpl.<init>(ServerImpl.java:63)
        at org.apache.cxf.jaxrs.JAXRSServerFactoryBean.create(JAXRSServerFactoryBean.java:170)

下面是指向 POM 文件(和 GitHub 存储库)的链接:https://github.com/ahoffer/desert-code-camp/blob/master/server/pom.xml

其他文章引用了一个缺失的依赖项,cxf-rt-transports-超文本传输协议,但我在POM.xml.中有一个依赖项

共有1个答案

司马同
2023-03-14

解决方案在这里:阿帕奇骆驼 - 包装一个可执行的罐子,在这里:缺少cxf.xml?在专家中失败,在日食中工作。

将此转换器和魔法资源添加到maven shade插件的配置部分可以修复它:

<transformer org.apache.maven.plugins.shade.resource.AppendingTransformer">
    <resource>META-INF/cxf/bus-extensions.txt</resource>
</transformer>

资源由插件生成;不需要创建它

 类似资料:
  • 我有使用WebPack构建的Angular2应用程序。我将WebPack从v1.8升级到v2,一切似乎都很好。唯一的问题是旧代码有以下内容: 升级后,这给了我一个错误:

  • 为什么using指令在包含在匿名命名空间中时表现得好像出现在全局范围?

  • 问题内容: 这个问题已经在这里有了答案 : 使用ElementTree保存XML文件 (4个答案) 5年前关闭。 我正在Python 2.7中使用ElementTree构建SVG文档。这是代码: 生成输出: 这不会解析为有效的SVG。如何删除ns0名称空间? 问题答案: 我只是想通了,无法删除问题,所以这里是: 我认为这仅适用于Python 2.7。

  • 在Visual Studio 2015专业版中打开我的项目时,我的所有视图(*. cshtml)中都有以下错误(以及更多)。 错误CS0246找不到类型或命名空间名称“系统”(您是否缺少使用指令或程序集引用?)严重性代码描述项目文件行 错误CS0518预定义类型“系统”。对象“”未定义或导入严重性代码描述项目文件行 错误CS0518预定义类型“系统”。字符串“”未定义或导入 我有这些参考资料: 我

  • 我已经创建了空的ASP.NET核心项目,我想在那里设置角。为此,我需要应用程序服务静态文件。所以我的startup.cs看起来是: 怎么了?

  • 本文向大家介绍JavaScript创建命名空间的5种写法,包括了JavaScript创建命名空间的5种写法的使用技巧和注意事项,需要的朋友参考一下 在JavaScript中全局变量经常会引起命名冲突,甚至有时侯重写变量也不是按照你想像中的顺序来的,可以看看下面的例子: 最终的输出为 为什么会这样,根据 StackOverFlow 的解释,实际上JavaScript的是按如下顺序解析的。 不带var