Bhu*_* BS 58 groovy android gradle build.gradle android-gradle-plugin
将Studio 3.4和Gradle版本更新到5.1.1我后,由于找不到方法leftShift(),我在执行任务时遇到了错误
我的任务:
task incrementBetaVersion << {
println("Incrementing Beta Version Number...")
incrementVersionNumber('BetaVersionNumber')
println("Incrementing Beta Version Number...")
incrementVersionName('BetaVersionName')
}
Run Code Online (Sandbox Code Playgroud)
我<<在行中出现了左移运算符的错误。
如何解决这个错误?
Bhu*_* BS 109
为了解决这个错误,改变<<与doLast这个样子。
task incrementBetaVersion {
doLast {
println("Incrementing Beta Version Number...")
incrementVersionNumber('BetaVersionNumber')
println("Incrementing Beta Version Number...")
incrementVersionName('BetaVersionName')
}
}
Run Code Online (Sandbox Code Playgroud)
左shitf运算符表示doLast { }。
<<在Gradle 4.x中已弃用,在Gradle 5.0中已删除
从文档中:
<<任务定义不再有效。换句话说,您不能使用语法
task myTask << { …? }。
改用该Task.doLast()方法,如下所示:
task myTask {
doLast {
...
}
}
Run Code Online (Sandbox Code Playgroud)
此处的更多信息: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
Nik*_*dva 14
<<(
LeftShift())运算符在4.x中已弃用,Gradle在5.xGradle版本中已删除。
用于解决 Could not find method leftShift() for arguments on task of type org.gradle.api.DefaultTask
doLast{}task incrementBetaVersion << {
// your code
}
Run Code Online (Sandbox Code Playgroud)
至
task incrementBetaVersion {
doLast {
// your code
}
}
Run Code Online (Sandbox Code Playgroud)
发生这种情况的原因是,左移运算符已被doLast {}代替。
<< has deprecated in 4.x and removed in 5.0 version
Run Code Online (Sandbox Code Playgroud)
现在您将不得不更改代码:
task incrementBetaVersion << {
println("Incrementing Beta Version Number...")
incrementVersionNumber('BetaVersionNumber')
println("Incrementing Beta Version Number...")
incrementVersionName('BetaVersionName')
}
Run Code Online (Sandbox Code Playgroud)
至
task incrementBetaVersion {
doLast {
println("Incrementing Beta Version Number...")
incrementVersionNumber('BetaVersionNumber')
println("Incrementing Beta Version Number...")
incrementVersionName('BetaVersionName')
}
}
Run Code Online (Sandbox Code Playgroud)
小智 5
解决这个错误非常简单。
只需替换<<为doLast
请参阅下面的更新代码,今天我修复了我的cordova Android 项目。
task cdvPrintProps {
doLast {
//your code
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
31340 次 |
| 最近记录: |