You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Gradle7.0.2环境下onesignal-gradle-plugin未找到报错如何解决?

报错原因

该报错由两个问题共同触发:

  • 你在plugins块中引入第三方非Gradle官方插件时未指定版本号,不符合Gradle 7.0+的语法要求
  • 项目的插件仓库列表中未配置该插件所在的公共仓库,导致无法检索到对应资源
解决方案

方案1:直接补全plugins块配置(推荐)

  1. 先打开项目根目录的settings.gradle文件,确保pluginManagement节点已配置正确的仓库:
pluginManagement {
    repositories {
        gradlePluginPortal()
        google()
        mavenCentral()
    }
}
  1. 修改你的Module级build.gradle的plugins块,给OneSignal插件补充对应版本号,和你引入的4.2.0版本SDK匹配的插件版本为0.14.0:
plugins {
    id 'com.android.application'
    id 'com.google.gms.google-services'
    // 补充version字段
    id 'gradle.plugin.com.onesignal.onesignal-gradle-plugin' version '0.14.0'
}

修改完成后重新同步Gradle即可。

方案2:改用传统buildscript引入方式(方案1失效时使用)

  1. 打开项目级build.gradle,在buildscript节点中添加插件依赖:
buildscript {
    repositories {
        google()
        mavenCentral()
        gradlePluginPortal()
    }
    dependencies {
        // 保留你原有的其他classpath配置,比如Android Gradle插件、google-services插件
        classpath "com.android.tools.build:gradle:7.0.2"
        classpath "com.google.gms:google-services:4.3.10"
        // 新增OneSignal插件依赖
        classpath 'gradle.plugin.com.onesignal:onesignal-gradle-plugin:0.14.0'
    }
}
  1. 修改Module级build.gradle,删除plugins块中的OneSignal插件声明,在文件最顶部添加插件引入语句,注意顺序:
plugins {
    id 'com.android.application'
    id 'com.google.gms.google-services'
    // 删除原来的OneSignal插件行
}
// 新增这行,注意放在com.android.application之后,google-services之前
apply plugin: 'com.onesignal.androidsdk.onesignal-gradle-plugin'

// 原有其他配置、dependencies配置保持不变

注意:必须严格遵守插件引入顺序,否则会导致资源合并冲突、通知功能异常等问题

内容的提问来源于stack exchange,提问作者TrungDung

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 19:15:02