当前位置: 首页 > 知识库问答 >
问题:

Gradle找不到testCompile,尽管我添加了java插件

云宾鸿
2023-03-14

因为几天前詹金斯的测试被取消了。我在里面得到的错误是:

配置根项目“MyAutomationTests”时出现问题。

未找到名为“测试编译”的配置。

这是我的build.gradle文件:

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath "io.qameta.allure:allure-gradle:2.3"

    }
}

group 'xyz'
version '1.0-SNAPSHOT'

apply plugin: 'io.qameta.allure'

repositories {
    mavenCentral()
}


def props = new Properties()
file("testsConfig.properties").withInputStream { props.load(it) }

allure {
    version = '2.4.1'
    aspectjweaver = true
    autoconfigure = true
    resultsDir = file(props.getProperty("projectPath")+'/allure-results')
    reportDir = file('raport/allure-results')
    clean
}

apply plugin: 'java'
apply plugin: 'idea'
sourceCompatibility = 1.8

subprojects {
    dependencies {
        testCompile 'junit:junit:4.12'
        testCompile 'io.appium:java-client:7.0.0'
        testCompile 'org.assertj:asertj-core:3.12.2'
        testCompile 'org.testng:testng:6.14.3'
        testCompile 'io.qameta.allure:allure-testng:2.13.1'
        testCompile 'log4j:log4j:1.2.17'
        testCompile 'com.jcabi:jcabi-log:0.17.2'
        testCompile 'org.slf4j:slf4j-log4j12:1.7.30'
        testCompile 'org.testobject:testobject-appium-java-api:0.1.14'
        testCompile 'io.rest-assured:rest-assured:4.3.2'
    }

}

test {
    System.setProperty("log4j.defaultInitOverride", "false")
    dependsOn cleanTest
    test.testLogging.showStandardStreams = false
    useTestNG() {
        systemProperties(props)
        systemProperties = System.getProperties()
        options.suites("src/test/resources/testng.xml")
    }
}

我们在詹金斯的自动测试一直运行良好,直到几天前。从那时起,它们就不再编译这个问题一开始就给出的错误了。在依赖项代码块中有“实现组”,但我最近将其改为TestCompile。“实现组”工作得很好,但它开始在TestCompile中弹出错误。根据我的理解,在我将java插件应用到依赖项后,配置应该在那里,但不知何故它不起作用。

我所尝试的:

  1. 尝试使用testCompile()或testImplementation,testImplementation组等进行修改,还将名称约定从'junit',name:'junit',version:'4.12'更改为当前的版本。
  2. 应用创意插件
  3. 在gradle构建的顶部应用了java插件
  4. 将testCompile更改为Testimplementation
  5. 在每一个代码块中都应用了java插件(很原始,但我没有想法了)
  6. 已更新项目中的依赖项

我可以看到它使用了/path/to/.Gradle/daemon/7.0,但在最后收到了信息:这个构建中使用了不推荐的Gradle特性,使其与gradle8.0不兼容,但我不认为Gradle本身是一个问题。在我们有一个7.0级之前,它在给定的confioguration中工作得非常好,它总是弹出同样的错误。

如果可能,请帮忙。

问候

共有1个答案

濮书
2023-03-14

对于那些和我面临同样问题的人:

我通过“./gradle”命令触发了gradle。我把它改成了“./Gradlew”,它就像一个魅力一样有效。

 类似资料:
  • 我想运行JavaFX。我已经运行了它,但我使用了相同的风景,所以我不知道为什么它现在不运行了。首先,我在模块设置中将库添加到购物车库中,然后在运行/调试配置中编写VM选项的路径: 然而,现在我看到: 我在过去使用同样的方法运行它,所以我不知道为什么现在会出现错误。

  • 我是刚开始使用gradle的,我遇到了一个构建错误,但我并不真正理解这个错误。我的项目只是一个空壳,有目录结构,没有java源代码。这是我的root build.gradle文件 当我执行gradle build命令时,生成失败,因为它不知道带有以下消息的testCompile方法:

  • 我在WebStorm IDE中将SystemJs.d.ts文件添加到我的项目中。该文件包括类Promise的两种用法,TSC将其标记为错误。这是非常奇怪的,因为我已经将es6-promise.d.ts文件添加到我的项目中,它确实解决了mongodb.d.ts文件的相同问题。那么为什么在一个文件中它被识别,而在另一个文件中它不被识别呢?所有的.d.ts文件都位于同一个文件夹中(root-folder

  • 在我的Mac上,我无法打开JNLP的文件。双击它们会打开一个弹出窗口,显示以下消息: 操作无法完成。找不到支持javaws的Java运行时。请访问http://www.java.com了解安装Java的信息。 从终端: 我知道Java Web Start在Java 9中被弃用,在Java 11中被删除。但这是一个Oracle JDK 8。我认为它应该提供Java Web Start。那么到底发生了

  • ldd找不到rpath定义中存在的dll。找到了其他一些库(check/./../lib/*) 这里是 ldd 的输出(我们可以看到在 ../lib,但不是自由 root@hyperstream:/DT/local/ADE-trunk4/build-ADE-Desktop-Default/bin#ldd./ade_adminlinux-vdso.so.1= root@hyperstream:/DT

  • 为什么!!。。有解决方案吗?这发生在更新后。 找不到org.jetbrains.kotlin:kotlin gradle插件:1.4-M2。在以下位置搜索: https://dl.google.com/dl/android/maven2/org/jetbrains/kotlin/kotlin-gradle-plugin/1.4-M2/kotlin-gradle-plugin-1.4-M2.pom