我可以在 IDEA/Android Studio 上构建或运行我的应用程序。 但我可以使用 Jenkins 在同一个 git 分支上成功构建它。 所以我不知道发生了什么。
这是我得到的输出:
引起:java.lang.RuntimeException: java.io.IOException: Failed to read manifest/Users/gongzelong/.android/build-cache/7a6a7706f3cec8ecf866a73dc32ecd4f769d6c2a/output/AndroidManifest.xml 在 com.android.build.gradle.tasks.ProcessAndroidResources.doFullTaskAction(ProcessAndroidResources.java:201)
./gradlew clean :app:assembleDebug --info > ~/Desktop/build_info.txt
失败:构建失败,出现异常。
出了什么问题: 任务“:app:processDebugManifest”执行失败。
com.android.manifmerger.ManifestMerger2$MergeFailureException: java.io.FileNotFoundException: /Users/gongzelong/.android/build-cache/7a6a7706f3cec8ecf866a73dc32ecd4f769d6c2a/output/AndroidManifest.xml (No such file or directory)
尝试: 使用 --stacktrace 选项运行以获取堆栈跟踪。使用 --debug 选项运行以获得更多日志输出。
我已经尝试了以下方法,但都没有用。
重建 无效并重新启动 重新启动 Mac ./gradlew clean :category:assembleDebug可以 ./gradlew clean:app:assembleDebug 删除/Users/gongzelong/.android/build-cache/
最佳答案
Android Studio 每次构建项目时,都会将aar 文件解压到您的/Users/gongzelong/.android/build-cache/文件夹中。我之前遇到过这个问题,是因为我构建的aar文件有问题,里面缺少AndroidManifest.xml文件。因此,尝试检查 7a6a7706f3cec8ecf866a73dc32ecd4f769d6c2a/output 中的文件夹内容以了解哪个 aar 文件有问题,并尝试检查项目中或由您的项目构建的 aar 文件是否已完成。
您的本地机器之前可能在构建缓存中有 AndroidManifest.xml,但您的 Jenkins 机器没有。这就是它无法在您的 Jenkins 机器上运行的原因。
关于Android gradle 构建由 : java. lang.RuntimeException : java. io.IOException 引起:无法读取 list ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53895974/