java build_error ai_generated true

Could not find method testImplementation() for arguments [junit:junit:4.13.2] on object of type org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler.

ID: java/gradle-missing-test-framework

Also available as: JSON · Markdown · 中文
80%Fix Rate
85%Confidence
0Evidence
2024-12-20First Seen

Version Compatibility

VersionStatusIntroducedDeprecatedNotes
7+ active

Root Cause

The 'testImplementation' configuration is used in a project that does not apply the Java plugin, which provides the test configurations.

generic

中文

在未应用 Java 插件的项目中使用了 'testImplementation' 配置,该插件提供测试配置。

Workarounds

  1. 95% success Apply the Java plugin to the project
    plugins { id 'java' }
  2. 70% success Use the 'test' configuration if the Java plugin is not desired (deprecated)
    testCompile 'junit:junit:4.13.2' (though deprecated, works in older Gradle)

Dead Ends

Common approaches that don't work:

  1. Adding testImplementation to the root project without applying the Java plugin 90% fail

    The test configuration is only available after applying the Java plugin.

  2. Using compileOnly instead of testImplementation 85% fail

    compileOnly does not include the dependency in the test classpath.