使用Springboot 1.5.3和Tomcat 8和8.5。我有一个自定义的春季启动项目IM用作依赖关系。这只是回购课。从我的主要课程中,我添加了
<dependency>
<groupId>com.swisher</groupId>
<artifactId>product-common</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
到我的pom.xml文件。它可以正常工作,但是当我将项目作为可部署的战争文件打包并推到Tomcat 8或8.5时,我的控制器看不到我的依赖性项目模型类。
2017-06-05 14:21:57.157错误5184 --- [nio-8080-exec-6]/swisher/pc/model/persim]
java.lang.noclassdeffounderror:com/swisher/pc/model/person 在com.swisher.pc.controllers.catalogcontroller.index(catalogcontroller.java:75(〜[class/:0.0.1-snapshot]
>我尝试使用
@SpringBootApplication(scanBasePackages={ "com.swisher", "com.swisher.pc"})
@ComponentScan(basePackages={"com.swisher", "com.swisher.pc"})
,但仍然不起作用。
任何帮助将不胜感激。
凯文
本文进一步说明[link] github.com/spring-projects/spring-boot/issues/:这是由于Spring Boot 1.4中可执行罐的布局变化所致。应用程序类现在正在boot-inf/class中包装,因此POM中的此条目可以做技巧
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>repackage</goal>
</goals>
<configuration>
<classifier>exec</classifier>
</configuration>
</execution>
</executions>
</plugin>
`
然后使用:MVN软件包Spring-boot:重新包装。然后是MVN安装。