我的项目结构如下:
parent pom
|
- Core module - pom
- Dist - pom
- Integration test - pomSpring引导主类在核心模块中。集成测试将进入集成测试文件夹。
我正在尝试使用spring maven插件进行集成测试。我在集成测试模块中对相同的pom进行了如下配置。start-class属性设置在父pom中:
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<mainClass>${start-class}</mainClass>
<layout>JAR</layout>
</configuration>
<executions>
<execution>
<goals>
<goal>repackage</goal>
</goals>
</execution>
<execution>
<id>pre-integration-test</id>
<goals>
<goal>start</goal>
</goals>
</execution>
<execution>
<id>post-integration-test</id>
<goals>
<goal>stop</goal>
</goals>
</execution>
</executions>
</plugin>但是,在父pom上的mvn干净安装上,我得到了以下错误:
[ERROR] Failed to execute goal org.springframework.boot:spring-boot-maven-plugin:1.5.10.RELEASE:start (pre-integration-test) on pro对象: Spring应用程序在配置超时之前没有启动(30000ms ->帮助1
问题:
PS :我检查过几个类似问题的问题,但没有回答我对给定项目结构提出的问题。
发布于 2018-02-22 13:26:42
我刚刚遇到了与您相同的错误(repackage :无法找到主类),试图将一些Spring代码概括为一个常见的spring引导项目。事实证明,这是不可能的,因为Spring引导项目需要一个带有主方法的类。
我使用直接依赖于我需要的spring框架模块来解决我的问题,也许您可以在集成测试项目中这样做。
但是,我不知道您试图在单独的项目中运行什么样的测试,但是关于核心模块的测试必须在核心模块本身中,使用Spring测试,而不是在单独的项目中。(在需要时使用模拟)。
希望这能有所帮助。
https://stackoverflow.com/questions/48656895
复制相似问题