Could not resolve all files for configuration ‘:debugCompileClasspath‘. > Could not find runtime....

假期回来打开电脑更新一下项目,结果就出现了下面这个问题:

 

FAILURE: Build failed with an exception.

* What went wrong:
Could not resolve all files for configuration ':debugCompileClasspath'.
> Could not find runtime.jar (android.arch.lifecycle:runtime:1.0.0).
  Searched in the following locations:
  https://jcenter.bintray.com/android/arch/lifecycle/runtime/1.0.0/runtime-1.0.0.jar

各种百度说要添加maven { url 'https://maven.google.com' }这句话:

 

allprojects {
  repositories {
      mavenLocal()
      maven { url 'https://maven.google.com' } // <-- add this!
      jcenter()
}

结果添加如下所示之后各种rebuild没效果

 

allprojects {
    repositories {
        jcenter()
        mavenLocal()
        maven {
            url 'https://maven.google.com'
            name 'Google'
        }
        maven {
            url "https://maven.google.com"
        }
        maven { url 'https://jitpack.io' }
    }
}

最终解决jcenter()一定要放在最后面才可以。黑人式问号???

坑爹啊~一脸懵逼

 

// keep this at the end
        jcenter()

最终结果如下这样,再rebuild一下就解决了

 

allprojects {
    repositories {
        mavenLocal()
        maven {
            url "https://maven.google.com"
        }
        maven { url 'https://jitpack.io' }
        jcenter()
    }
}

后续补充:大家遇到这问题的项目是不是都引用kotlin的?目前我跟踪了几个报此错误此解决方式的项目是都满足这条件。知道的同志们评论区探讨吧~



作者:筱宓dawnLing
链接:https://www.jianshu.com/p/9de30197b528
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

failed The 'kotlin-android-extensions' Gradle plugin is deprecated. Please use this migration guide (https://goo.gle/kotlin-android-extensions-deprecation) to start working with View Binding (https://developer.android.com/topic/libraries/view-binding) and the 'kotlin-parcelize' plugin. :app:mergeDebugResources :app:mapDebugSourceSetPaths :app:checkDebugAarMetadata :app:processDebugMainManifest :app:javaPreCompileDebug :app:mergeDebugAssets :app:checkDebugDuplicateClasses :app:mergeDebugNativeLibs :app:dataBindingMergeDependencyArtifactsDebug :JetpackMvvm:compileDebugKotlin :JetpackMvvm:bundleLibRuntimeToJarDebug org.gradle.api.internal.artifacts.ivyservice.DefaultLenientConfiguration$ArtifactResolveException: Could not resolve all files for configuration ':app:debugRuntimeClasspath'. org.gradle.api.internal.artifacts.transform.TransformException: Failed to transform agentweb-4.1.3.aar (com.just.agentweb:agentweb:4.1.3) to match attributes {artifactType=android-res, org.gradle.category=library, org.gradle.libraryelements=jar, org.gradle.status=release, org.gradle.usage=java-runtime}. org.gradle.internal.resolve.ArtifactNotFoundException: Could not find agentweb-4.1.3.aar (com.just.agentweb:agentweb:4.1.3). org.gradle.api.internal.artifacts.ivyservice.DefaultLenientConfiguration$ArtifactResolveException: Could not resolve all files for configuration ':app:debugRuntimeClasspath'. org.gradle.api.internal.artifacts.transform.TransformException: Failed to transform agentweb-4.1.3.aar (com.just.agentweb:agentweb:4.1.3) to match attributes {artifactType=android-res, org.gradle.category=library, org.gradle.libraryelements=jar, org.gradle.status=release, org.gradle.usage=java-runtime}. org.gradle.internal.resolve.ArtifactNotFoundException: Could not find agentweb-4.1.3.aar (com.just.agentweb:agentweb:4.1.3). org.gradle.api.internal.artifacts.ivyservice.DefaultLenientConfiguration$ArtifactResolveException: Could not resolve all files for configuration ':app:debugRuntimeClasspa
03-14
### 关于 'kotlin-android-extensions' 插件弃用及 AgentWeb 依赖问题的解决方案 #### 背景说明 `kotlin-android-extensions` 是 Android Studio 中曾经广泛使用的插件,用于简化视图绑定操作。然而,该插件已被官方标记为废弃状态[^1]。取而代之的是推荐使用更现代的技术栈,例如 Jetpack 的 `ViewBinding` 或者 `DataBindingUtil`。 当项目中仍然存在对该插件的引用时,在构建过程中可能会触发警告甚至错误消息。此外,如果项目的依赖库(如 AgentWeb)也涉及类似的旧技术或者资源转换冲突,则可能导致 Gradle 构建失败。 --- #### 错误分析与解决方法 ##### 方法一:移除已废弃的插件并替换其功能实现 由于 `kotlin-android-extensions` 已被废弃,建议将其从 `build.gradle` 文件中删除,并采用新的方式替代原有功能: 1. **修改 `build.gradle` 配置** 打开模块级的 `build.gradle` 文件,找到以下配置项并注释掉或完全移除: ```groovy apply plugin: 'kotlin-android-extensions' ``` 2. **启用 View Binding 替代扩展函数** 如果之前依赖此插件来访问布局中的控件实例,可以切换到 Jetpack 提供的 `ViewBinding` 功能。具体步骤如下: - 在根目录下的 `build.gradle` 添加支持选项: ```groovy android { ... viewBinding { enabled = true } } ``` - 使用生成的绑定类代替手动查找视图对象。例如,原代码可能写成这样: ```kotlin class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) val textView = findViewById<TextView>(R.id.viewToShowText) textView.text = "Hello" } } ``` 改造后的版本利用 `ViewBinding` 实现相同逻辑: ```kotlin import com.example.yourproject.databinding.ActivityMainBinding class MainActivity : AppCompatActivity() { private lateinit var binding: ActivityMainBinding override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) binding = ActivityMainBinding.inflate(layoutInflater) setContentView(binding.root) binding.viewToShowText.text = "Hello" } } ``` 3. **验证更改效果** 完成上述调整之后重新同步项目 (`Sync Now`) 并尝试再次执行构建命令以确认问题是否得到缓解[^4]。 --- ##### 方法二:排查 AgentWeb 版本兼容性问题 对于提到的 `AgentWeb-4.1.3.aar` 和安卓资源变换错误 (android-res transformation),通常表明某些第三方库内部可能存在过时组件或者是与其他部分发生冲突的情况。 以下是几种常见的处理手段: 1. **更新至最新稳定版** 查阅 [AgentWeb GitHub](https://github.com/Justson/AgentWeb) 页面获取当前可用最高版本号,并相应升级声明语句。比如由原来的定义形式改为: ```groovy implementation 'com.github.Justson.AgentWeb:agentweb-core:5.x.x' ``` 2. **清理缓存重试** 若怀疑本地存储的数据干扰到了正常流程,可依次运行这些终端指令清除残留影响后再做测试: ```bash ./gradlew clean rm -rf .gradle/ ``` 3. **强制指定工具链参数** 对应特定场景下设置额外属性帮助绕过潜在障碍物。举个例子来说就是加入下面这段内容到全局级别 gradle.properties 当中去: ```properties android.enableJetifier=true android.useAndroidX=true org.gradle.jvmargs=-Xmx2048m -Dfile.encoding=UTF-8 kapt.incremental.annotation.processing=false ``` --- ### 总结 综上所述,针对因 `'kotlin-android-extensions'` 废弃引发的一系列连锁反应以及伴随出现的其他异常状况给出了针对性指导措施。实际应用当中还需结合具体情况灵活运用以上技巧加以应对。 ```python print("Gradle Build Succeeded!") ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值