当我从
Eclipse(STS)运行Spring Boot应用程序作为“Java Application”或“Spring Boot App”时,应用程序失败,因为它尝试从测试类路径加载配置(@Configuration).
问题是它适用于基于maven的构建,但不适用于gradle.
我看到的唯一解决方法是将测试包重命名为其他内容以将其隐藏在类路径扫描中.
总体而言,问题是 – 如何使其正常工作?我假设SpringToolSuite团队每天遇到这个问题,或者我做错了什么.
这是一个测试项目,在导入为maven时有效,但在导入为gradle时失败:https://github.com/mabn/spring-boot-integration-test
>这是year-old STS issue – 它仍然相关吗?
> Here’s another one marked as resolved
> Similar question about maven projects
我正在使用STS 3.7.1
最佳答案
The thing is that it works for maven based builds correctly, but not for gradle.
是的,不幸的是情况就是这样. Gradle根本没有正确配置eclipse的运行时类路径. Gradle自己的新BuildShip eclipse插件就是这种情况.
看到我最近提出的这个问题:
https://bugs.eclipse.org/bugs/show_bug.cgi?id=482315
您找到的已解决的错误确实已得到解决,但它只关注maven / m2e情况,这实际上是可修复的(m2e对“Run As>> Java Project”这样做是正确的)我们对“Run As”采用了类似的修复方法>> Spring Boot App“).但是,该修复程序是特定于maven的,因为在解决此Gradle tooling-api问题故障单之前,gradle情况无法真正解决: