После обновления с Spring Boot 1.3.7 до 1.4.0 мы больше не можем запускать наше приложение как единую сборку jar с плагином Spring Boot Maven. Наше приложение представляет собой небольшой REST-интерфейс, использующий Jersey и Jetty. Мы используем Maven, и наш файл pom довольно стандартный для Spring Boot.
Мы по-прежнему можем запускать приложение с помощью mvn spring-boot:run
и из Eclipse, но при запуске в виде одного jar-файла Jersey ResourceFinder
жалуется, что не может найти .jar!/BOOT-INF/classes
.
Когда я распаковываю банку, папка BOOT-INF/classes
присутствует и содержит ожидаемые классы и ресурсы.
Любая помощь приветствуется.
2016-08-10 14:58:31.162 ERROR 16071 --- [ main] o.s.boot.SpringApplication
: Application startup failed
org.springframework.beans.factory.BeanCreationException:
Error creating bean with name 'jerseyConfig' defined in URL
[jar:file:/acmesource/acme/acme-core/acme-core-api/target/acme-core-api-0.1
SNAPSHOT.jar!/BOOT-INF/classes!/com/acme/core/api/JerseyConfig.class]: Bean
instantiation via constructor failed; nested exception is
org.springframework.beans.BeanInstantiationException: Failed to instantiate
[com.acme.core.api.JerseyConfig]: Constructor threw exception; nested
exception is
org.glassfish.jersey.server.internal.scanning.ResourceFinderException:
java.io.FileNotFoundException: /acmesource/acme/acme-core/acme-core
api/target/acme-core-api-0.1-SNAPSHOT.jar!/BOOT-INF/classes (No such file or directory)