m.m*_*kin 40 continuous-integration android build kotlin gitlab
我在gitlab ci上构建了这个项目
./gradlew assembleDebug --stacktrace
Run Code Online (Sandbox Code Playgroud)
有时它会抛出一个错误:
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':app:transformClassesWithDexBuilderForDebug'.
> com.android.build.api.transform.TransformException: java.lang.IllegalStateException: Dex archives: setting .DEX extension only for .CLASS files
Run Code Online (Sandbox Code Playgroud)
在我的本地电脑上它正常工作.
kotlin版本是1.2
multidex已启用
这个错误的原因是什么?
mix*_*xel 94
./gradlew clean 为我修复了同样的错误.
Zl3*_*l3n 45
对于Cordova开发人员,
如果您在项目中遇到此构建错误,如PierrickMartellière在此答案的评论中所述,请在项目文件夹中使用:
cordova clean
Run Code Online (Sandbox Code Playgroud)
立即进行清洁和修整
我似乎找到了解决方案.在构建时刻,gradle正在向我显示警告:
Configuration 'compile' in project ':app' is deprecated. Use 'implementation' instead.
app: 'androidProcessor' dependencies won't be recognized as kapt annotation processors. Please change the configuration name to 'kapt' for these artifacts: 'com.arello-mobile:moxy-compiler:1.5.3' and apply the kapt plugin: "apply plugin: 'kotlin-kapt'".
Run Code Online (Sandbox Code Playgroud)
我做了一个拼写错误,忘记删除库中不必要的annotationProcessor:
annotationProcessor "com.arello-mobile:moxy-compiler:$moxyVersion"
kapt "com.arello-mobile:moxy-compiler:$moxyVersion"
Run Code Online (Sandbox Code Playgroud)
所以我删除了第一行.
之后我应用了kapt插件apply plugin: 'kotlin-kapt'并在代码之后修复了一些构建错误.
毕竟我意识到我忘compile了implementation在某些地方更换.这很奇怪,但没有它,构建不起作用.
此更改修复了我的错误构建.
| 归档时间: |
|
| 查看次数: |
32473 次 |
| 最近记录: |