gradle2.3.3升级到gradle3.5.0问题汇总
问题1:Could not find method leftShift() for arguments
preBuild << {
task.execute()
}
解决方案:去掉build.gradle文本中的<<
问题2:Gradle DSL method not found: 'execute()' 解决方案:目前用task.doFirst方法代替
问题3:Cannot set the value of read-only property 'outputFile'
android.applicationVariants.all { variant ->
variant.outputs.each { output ->
def outputFile = output.outputFile
if (outputFile != null && outputFile.name.endsWith('.apk')) {
//这里修改apk文件名
def fileName="jianShu-${variant.buildType.name}-${defaultConfig.versionName}.apk"
output.outputFile = new File(outputFile.parent, fileName)
}
}
}
解决方案:
android.applicationVariants.all { variant ->
variant.outputs.all { output ->
def outputFile = output.outputFile
if (outputFile != null && outputFile.name.endsWith(‘.apk’)) {
//这里修改apk文件名
def fileName = “jianShu-${variant.buildType.name}-${defaultConfig.versionName}.apk”
output.outputFileName = fileName
}
}
}
问题4:Unable to resolve dependency for ':CoreBusiness@beta/compileClasspath': Could not resolve project :OpenSourceLibrary. 解决方案:所有module下的buildTypes要保持一致
buildTypes {
debug {
...
}
beta {
...
//关键代码,lib的module下要添加这行代码
matchingFallbacks = ['release', 'debug']
}
release {
...
}
sourceSets{
}
lintOptions {
}
}
注意:lib的module下buildTypes中的项目可以不填内容,例如:lintOptions{}
问题5:jni生成so的方式改变了。 【gradle2.3.3升级到gradle3.5.0问题汇总】解决方案:使用CMake方式来生成so。
问题6:签名打包需要使用v2Signing。 解决方案:使用美团新版打包工具,项目地址:https://github.com/Meituan-Dianping/walle
推荐阅读
- 2018-02-06第三天|2018-02-06第三天 不能再了,反思到位就差改变
- 一个小故事,我的思考。
- 第三节|第三节 快乐和幸福(12)
- 你到家了吗
- 遇到一哭二闹三打滚的孩子,怎么办┃山伯教育
- 死结。
- 赢在人生六项精进二阶Day3复盘
- jhipster|jhipster 升级无效问题
- 子龙老师语录
- 异地恋中,逐渐适应一个人到底意味着什么()