【问题标题】:Gradle Multi-project test dependencies no longer working in Eclipse for Gradle 6.7Gradle 多项目测试依赖项在 Eclipse 中不再适用于 Gradle 6.7
【发布时间】:2020-10-21 17:28:42
【问题描述】:

假设我有 2 个 Gradle 项目,分别称为“project-base”和“project-extension”。 我希望能够在“project-extension”的 src/tests/java 中看到“project-base”的 src/tests/java 中定义的类,以便能够在项目测试之间使用通用代码. 为了做到这一点,我把它放在“项目扩展”中:

dependencies { testImplementation project(path: ':project-base', configuration: 'testArtifacts')

这在 Gradle 6.6.1 之前一直有效。但现在我尝试切换到 Gradle 6.7,但它在 Eclipse 中不起作用。 Eclipse 将能够导航到“project-base”中的类,但仍会将它们显示为红色并拒绝编译,说它无法解析依赖项。 请注意,即使对于 Gradle 6.7,这仍然适用于 IntelliJIdea 文件,这让我相信它与 Buildship(Eclipse 的 Gradle 插件)不正确支持 Gradle 6.7 的此功能有关。

有没有办法让 Eclipse 中的 Gradle 6.7 仍然可以使用?

【问题讨论】:

    标签: java eclipse gradle


    【解决方案1】:

    此问题可能与 Eclipse 和 Buildship 问题有关:

    将此代码添加到build.gradle 解决了问题。

    plugins {
      id 'eclipse'
    }
    
    eclipse.classpath.file.whenMerged {
      entries.findAll { it instanceof org.gradle.plugins.ide.eclipse.model.ProjectDependency }
        .each { it.entryAttributes['without_test_code'] = 'false' }
    }
    

    【讨论】:

      猜你喜欢
      • 2011-08-04
      • 1970-01-01
      • 2015-01-10
      • 1970-01-01
      • 2015-06-28
      • 2016-08-06
      • 2018-11-10
      相关资源
      最近更新 更多