Gradle 7.3 s Java 17 s úkolem processIntTestResources: Vstup [filename] je duplicitní, ale žádné duplicitní zpracování strategie byla nastavena

0

Otázka

Snažím se aktualizovat gradle 6.x verze multi projektové žádosti do gradle 7.3, protože je to první verze, která podporuje Java 17. Nicméně, nejsem schopen pokrok v minulosti problém vyplývající z úkolu, který není deklarována v žádném z mých build.gradle soubory. Chyba je níže: ([] kusů jsou redigovány)

Execution failed for task ':[root module]:[module]:processIntTestResources'.
> Entry [filename] is a duplicate but no duplicate handling strategy has been set. Please refer to https://docs.gradle.org/7.3/dsl/org.gradle.api.tasks.Copy.html#org.gradle.api.tasks.Copy:duplicatesStrategy for details.

Myslím, že je spojena s sourceSet pro integrační testy, nicméně, nikdy jsem výslovně kopírování a soubory pro tyto zkoušky. Také jsem nastavit všechny kopie podle pokynů, aby tato konfigurace s ohledem na duplicitní manipulace:

duplicatesStrategy = DuplicatesStrategy.INCLUDE

Zkoušel jsem i přidání výše uvedené projekty, které se nezdařilo, protože toto nastavení je platné pouze pro Kopírování typ úlohy nebo bloky. Já jsem v žádném případě odborník na gradle a můžete přidat veškeré relevantní informace potřebné, ale věřím, že jsem součástí toho, co by mohly být nejvíce relevantní. Já jsem opravdu jen při pohledu na směr, kterým jsem se můžete vydat na další ladění této otázce.

gradle java java-17
2021-11-23 21:54:30
1

Nejlepší odpověď

0

Neukázal jste hodně o tom, jak máte integrační testy nakonfigurován, ale narazil jsem na podobný problém. Co mě zachránilo, byl tento blog post o Tom Gregory: Běh integračních testů v Gradle

Protože odkazy zmizí, nechte mě to zkopírovat a vložit nejdůležitější část, kterou jsem našel relevantní, což je o nové (jak Gradle 7.3) JVM Test Suite Plugin , který přidává podporu pro integrační testy. Pro mě to nahradil můj starý integrace testovací konfigurace:

testing {
    suites {
        integrationTest(JvmTestSuite) {
            dependencies {
                implementation project
            }
        }
    }
}
tasks.named('check') {
    dependsOn testing.suites.integrationTest
}

Také jsem našel následující užitečné, který není ve výše uvedeném blogu, ale je to pozůstatek z mé předchozí Gradle 6 konfigurace. To pro mě kopíruje "test" závislosti na 'integrationTest'. To není doporučený způsob nakládání test depedencies teď (viz JVM Test Suite Plugin dokumentace), ale já jsem ještě zjistil, že je užitečné pro mě dostat zpátky rychle běží:

configurations {
    integrationTestImplementation.extendsFrom testImplementation
    integrationTestRuntime.extendsFrom testRuntime
}
2021-12-14 22:25:37

V jiných jazycích

Tato stránka je v jiných jazycích

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................