Jerseyアノテーションを使用してRESTリソースを記述しました。春ブーツでその作業を行うために、私はJerseyConfigurationクラスを追加しました:RESTアプリケーションはEclipseで実行されますが、実行可能なJARとしては実行されません。 NoClassDefFoundError:javax/xml/bind/annotation/XmlElement
@Configuration
@ApplicationPath("/api")
public class JerseyConfiguration extends ResourceConfig {
public JerseyConfiguration() { }
@PostConstruct
public void setUp() {
register(AdminController.class);
register(AdminResource.class);
register(GenericExceptionMapper.class);
}
}
Eclipseでアプリケーションを実行する際にこれが正常に動作します。私が作成し、JARファイルを実行すると、私は次のエラーを取得:
12:45:15.311 [main] ERROR o.s.boot.SpringApplication : Application startup failed org.springframework.context.ApplicationContextException: Unable to start embedded container;
nested exception is java.lang.RuntimeException: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.boot.autoconfigure.jersey.JerseyAutoConfiguration': Bean instantiation via constructor failed;
nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.springframework.boot.autoconfigure.jersey.JerseyAutoConfiguration$$EnhancerBySpringCGLIB$$d46b8aee]: Constructor threw exception;
nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'resourceConfigCustomizer' defined in class path resource [org/springframework/boot/autoconfigure/jersey/JerseyAutoCon figuration$JacksonResourceConfigCustomizer.class]: Bean instantiation via factory method failed;
nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.springframework.boot.autoconfigure.jersey.ResourceConfigCustomizer]: Factory method 'resourceConfigCustomizer' threw exception;
nested exception is java.lang.NoClassDefFoundError: javax/xml/bind/annotation/XmlElement
をこれがなぜ起こるか誰も教えてもらえますか?私の知る限りではjavax/xml/bind/annotation
は、Java 8 rt.jar
の一部であり、私はJavaの8 SDKを使用してjarファイルを開始したと思ったが、それは本当にだったのJava 8、