Я хочу создать uber JAR для сервера приложений на основе CXF. Я хочу сервер с командной строки с java -jar
. В IDE я могу запустить основной класс com.connexta.desertcodecamp.Server
, но я неправильно создаю uber jar.Не найдено DestinationFactory для пространства имен - создайте uber JAR из CXF с Jetty
Когда я запускаю команду 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-http
, но У меня это как зависимость в POM.xml.
вы уверены, что у вас есть это в объединенной банке? _How_ вы объединили банки? – bmargulies
@bmargulies Я не знаю достаточно, чтобы ответить на вопрос. Я не знаю, какие сочетания в этом случае. Я включил cxf-rt-transports-http в качестве зависимости от maven. Я предположил, что все зависимости пробиваются в затененный JAR. – ahoffer