Depois de atualizar a 3.4
versão do Studio e do Gradle para 5.1.1
, recebi o erro em minha tarefa como Não foi possível encontrar o método leftShift ()
Minha tarefa:
task incrementBetaVersion << {
println("Incrementing Beta Version Number...")
incrementVersionNumber('BetaVersionNumber')
println("Incrementing Beta Version Number...")
incrementVersionName('BetaVersionName')
}
Recebi o erro do operador do turno esquerdo <<
na linha.
Como resolver esse erro?
android
gradle
groovy
android-gradle-plugin
build.gradle
Bhuvanesh BS
fonte
fonte
ERROR: Could not find method leftShift() for arguments [android_release_aar_8aaffqenud6qsg8w8hrovmfvc$_run_closure7@23b31b41] on task ':XXXapi:generateRelease' of type org.gradle.api.DefaultTask.
. Não estou chegando onde realmente tenho que mudar.Respostas:
Para resolver este erro, mude
<<
comdoLast
assim.Operador shitf esquerdo representa
doLast { }
.Do Docs:
<<
para definições de tarefas não funciona mais. Em outras palavras, você não pode usar a sintaxetask myTask << { … }
.Use o
Task.doLast()
método, como este:Mais informações aqui: 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
fonte
Para solução de
Could not find method leftShift() for arguments on task of type org.gradle.api.DefaultTask
Basta remover "<<" da tarefa e adicionar o método em
doLast{}
Referência https://discuss.gradle.org/t/could-not-find-method-leftshift-for-arguments-on-task-of-type-org-gradle-api-defaulttask/30614/2
para
fonte
Isso aconteceu porque o operador Left Shift foi substituído por doLast {}.
Agora você terá que alterar o código:
para
fonte
Resolver esse erro é bem simples.
Basta substituir
<<
pordoLast
Veja abaixo o código atualizado, hoje conserto no meu projeto cordova Android.
fonte
Eu tive este erro em um projeto Kotlin que está usando
MockMaker
para simular classes não finais.A solução é mudar a sintaxe antiga para esta nova:
Observe que algumas coisas mudaram, como incluir o
doLast
bloco e remover o<<
da assinatura da tarefa. Trabalha para mim agora. Espero que funcione para você também :-)fonte