在编译文件时,如果没有网络,很有可能造成编译失败。通过以下步骤,确认编译环境的网络已连接。
如果程序编译失败,可通过以下步骤进行排错与解决:
//引用 debug 包group:artifact:version:raw@jar
bundle "com.app.xxxxx.xxxx:test-build:1.0-SNAPSHOT:raw@jar"
//引用 release 包group:artifact:version@jar
bundle "com.app.xxxxx.xxxx:test-build:1.0-SNAPSHOT@jar"
manifest "com.app.xxxxx.xxxx:test-build:1.0-SNAPSHOT:AndroidManifest@xml"
// 执行命令前,确认未定义 productflavor 属性。否则,命令会运行失败。
// 以下命令将执行记录导出至 log.txt 文件中。
gradle buildDebug --info --debug -Plog=true > log.txt
Caused by: org.gradle.internal.resolve.ArtifactNotFoundException: Could not find nebulacore-build-AndroidManifest.xml (com.alipay.android.phone.wallet:nebulacore-build:1.6.0.171211174825).
Searched in the following locations:
http://mvn.cloud.alipay.com/nexus/content/repositories/releases/com/alipay/android/phone/wallet/nebulacore-build/1.6.0.171211174825/nebulacore-build-1.6.0.171211174825-AndroidManifest.xml
at org.gradle.internal.resolve.result.DefaultBuildableArtifactResolveResult.notFound(DefaultBuildableArtifactResolveResult.java:38)
at org.gradle.api.internal.artifacts.ivyservice.ivyresolve.CachingModuleComponentRepository$LocateInCacheRepositoryAccess.resolveArtifactFromCache(CachingModuleComponentRepository.java:260)
gradle
缓存:
gradle clean --refresh-dependencies
cd ~
cd .gradle
cd caches
rm -rf modules-2
C:\Users\\{用户名}\\.gradle\caches
,删除 modules-2
文件夹。一般为配置文件(conf 文件)的问题,需要对字段进行检查。检查 13 个字段是否有缺少,和公有云下载过来的文件进行对比,确认字段名是否正确。
开发过程中需要调试代码,本文介绍两种调试方式:
使用场景
希望调试应用启动时的最初代码,比如在 application init 时初始化代码。
操作步骤:
执行命令 adb shell am start -W -S -D 应用包名/应用第一个启动的页面类名
。例如,mPaaS Demo 的包名是 com.mpaas.demo
,应用第一个启动的页面类名是com.alipay.mobile.quinox.LauncherActivity
,那么可以使用命令行 adb shell am start -W -S -D com.mpaas.demo/com.alipay.mobile.quinox.LauncherActivity
以调试模式启动应用。第一个启动的类名如下图所示:
执行命令之后,手机会弹出如下对话框:
对希望调试的代码行设置断点,然后附着到应用所在进程即可,如下图:
使用场景
在触发某个事件之后进行调试,比如点击某个按钮或者跳转某个页面才需要调试。
操作步骤:
在应用运行后,点击附着进程()按钮,或者在执行上述命令后,再点击附着按钮开始调试。
打开 Gradle 插件的设置界面,点击 Clean Cache 按钮,即可删除 Gradle 插件的所有缓存数据。
在文档使用中是否遇到以下问题
更多建议
匿名提交