Nie można znaleźć metody leftShift () dla argumentów po aktualizacji studio 3.4
Po aktualizacji studio 3.4
i wersji Gradle do 5.1.1
otrzymałem błąd w moim zadaniu, ponieważ nie można znaleźć metody leftShift()
Moje zadanie:
task incrementBetaVersion << {
println("Incrementing Beta Version Number...")
incrementVersionNumber('BetaVersionNumber')
println("Incrementing Beta Version Number...")
incrementVersionName('BetaVersionName')
}
Dostałem błąd operatora lewej zmiany <<
w linii.
Jak rozwiązać ten błąd?
5 answers
Aby rozwiązać ten błąd, Zmień <<
na doLast
w ten sposób.
task incrementBetaVersion {
doLast {
println("Incrementing Beta Version Number...")
incrementVersionNumber('BetaVersionNumber')
println("Incrementing Beta Version Number...")
incrementVersionName('BetaVersionName')
}
}
Lewy operator przesunięcia reprezentuje doLast { }
.
<<
został sklasyfikowany na 4.x i usunięte w Gradle 5.0
Od Docs:
<<
dla definicji zadań już nie działa. Innymi słowy, nie można używać składni
task myTask << { … }
.
Użyj zamiast tego metody Task.doLast()
, w następujący sposób:
task myTask {
doLast {
...
...
}
}
Więcej informacji proszę.: https://discuss.gradle.org/t/could-not-find-method-leftshift-for-arguments-on-task-of-type-org-gradle-api-defaulttask/30614
Https://docs.gradle.org/current/userguide/upgrading_version_4.html#changes_5.0
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2020-10-26 15:50:59
Po Prostu Usuń "doLast{}
Dla roztworu Could not find method leftShift() for arguments on task of type org.gradle.api.DefaultTask
task incrementBetaVersion << {
// your code
}
Do
task incrementBetaVersion {
doLast {
// your code
}
}
LeftShift()) operator jest przestarzały w 4.x
Gradle
i usunięte w 5.Wersja xGradle
.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2020-11-06 06:46:49
Dzieje się tak, ponieważ operator zmiany lewej został zastąpiony przez doLast { }.
<< has deprecated in 4.x and removed in 5.0 version
Teraz będziesz musiał zmienić kod:
task incrementBetaVersion << {
println("Incrementing Beta Version Number...")
incrementVersionNumber('BetaVersionNumber')
println("Incrementing Beta Version Number...")
incrementVersionName('BetaVersionName')
}
Do
task incrementBetaVersion {
doLast {
println("Incrementing Beta Version Number...")
incrementVersionNumber('BetaVersionNumber')
println("Incrementing Beta Version Number...")
incrementVersionName('BetaVersionName')
}
}
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2019-07-04 11:37:12
Aby rozwiązać ten błąd jest dość proste.
Wystarczy zamienić <<
na doLast
Zobacz poniżej zaktualizowany kod, dziś naprawić w moim projekcie cordova Android.
task cdvPrintProps {
doLast {
println('cdvCompileSdkVersion=' + cdvCompileSdkVersion)
println('cdvBuildToolsVersion=' + cdvBuildToolsVersion)
println('cdvVersionCode=' + cdvVersionCode)
println('cdvVersionCodeForceAbiDigit=' + cdvVersionCodeForceAbiDigit)
println('cdvMinSdkVersion=' + cdvMinSdkVersion)
println('cdvBuildMultipleApks=' + cdvBuildMultipleApks)
println('cdvReleaseSigningPropertiesFile=' + cdvReleaseSigningPropertiesFile)
println('cdvDebugSigningPropertiesFile=' + cdvDebugSigningPropertiesFile)
println('cdvBuildArch=' + cdvBuildArch)
println('computedVersionCode=' + android.defaultConfig.versionCode)
android.productFlavors.each { flavor ->
println('computed' + flavor.name.capitalize() + 'VersionCode=' + flavor.versionCode)
}
}
}
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2020-02-27 13:27:17
Miałem ten błąd w projekcie Kotlin, który używa MockMaker
do makietowania niekończących się klas.
Rozwiązaniem jest zmiana starej składni na nową:
task createTestResources {
description = "Allows Mocking non-final classes and data classes in a Kotlin project"
doLast {
def mockMakerFile = new File("$projectDir/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker")
if (System.env.MOCK_MAKER != null) {
logger.info("Using MockMaker ${System.env.MOCK_MAKER}")
mockMakerFile.parentFile.mkdirs()
mockMakerFile.createNewFile()
mockMakerFile.write(System.env.MOCK_MAKER)
} else {
logger.info("Using default MockMaker")
}
}
}
Zauważ, że kilka rzeczy się zmieniło, jak włączenie bloku doLast
i usunięcie <<
z sygnatury zadania. Teraz mi pasuje. Mam nadzieję, że dla ciebie też: -)
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2019-05-21 10:28:00