【发布时间】:2021-05-27 15:47:26
【问题描述】:
我能花时间仔细调试这些问题并修复它们吗?是的。我是否已经花费了大量时间来做这件事,但仍然继续寻找随机问题的兔子洞?是的。我希望有一个简单的解决方案。
我在一家非常非常大的公司工作。我们的 Java 堆栈充满了企业依赖项,具有自己复杂的传递依赖项网络。当使用 IntelliJ 的 runner 与 Maven 的 runner 运行时,这会成为一个问题。
如果我执行 mvn spring-boot:run,一切都会正常运行。时期。它不仅在本地工作,在我们的云环境中部署的捆绑 jar 也可以工作。
但是,当我使用 IntelliJ 运行时,事情变得很糟糕。所有问题都与 IntelliJ 如何设置其类路径完全相关。依赖冲突的处理方式不同,库以不同的顺序加载导致对某些企业资源的奇怪影响等。
我只想让 IntelliJ 基本上执行 mvn spring-boot:run,但仍然可以选择自动附加调试器。
【问题讨论】:
-
有什么理由不能使用 IntelliJ 的 Maven 运行器吗?如果我没有完全弄错的话,调试器应该可以附加到这种类型的运行配置上。另外,您是否将 IntelliJ 配置为自动从您的 POM 加载依赖项? (也就是说,你是把项目导入为 Maven 项目了吗?)
-
那不附加调试器。 IntelliJ 正在从 maven 加载依赖项,但 Spring Runner 正在使用类路径做一些时髦的事情。
-
设置“将 IDE 构建/运行操作委托给 Maven”应该完全符合您的要求:IDEA 会将所有构建和运行留给 Maven,确保您使用与手动构建完全相同的设置/运行。
-
那个设置在哪里?
标签: java spring-boot intellij-idea