1

我正在尝试为我的颤振应用程序设置 Firebase crashlytics。我已按照https://blog.codemagic.io/practical-guide-flutter-firebase-codemagic/中的步骤操作,并且在本地运行时工作正常。但是,我发现使用 CI/CD 工具 Codemagic 失败了。

== 初始化 Gradle 项目 /Users/builder/clone/android/app/build.gradle == 拾取 _JAVA_OPTIONS: -Xmx3g

FAILURE:构建失败并出现异常。

  • 其中:构建文件'/Users/builder/clone/android/build.gradle'行:7

  • 出了什么问题:评估根项目“android”时出现问题。

    在 org.gradle.api.internal.initialization.DefaultScriptHandler 类型的对象上找不到参数 [build_8np9gq8hl982yq6pq0eovgcan$_run_closure1$_closure3@6b63e6ad] 的方法 maven()。

  • 尝试:使用 --stacktrace 选项运行以获取堆栈跟踪。使用 --info 或 --debug 选项运行以获得更多日志输出。运行 --scan 以获得完整的见解。

不确定任何解决方案。在 slack 上寻求 codemagic 支持!

现在我的 app/android/build.gradle 文件看起来像:

buildscript {
   repositories {
       google()
       jcenter()
   }

   maven {
       url 'https://maven.fabric.io/public'
   }

   dependencies {
       classpath 'com.android.tools.build:gradle:3.3.0'
       classpath 'com.google.gms:google-services:4.2.0'
       classpath 'io.fabric.tools:gradle:1.26.1'
   }
}

allprojects {
   repositories {
       google()
       jcenter()
   }

}

rootProject.buildDir = '../build'
subprojects {
   project.buildDir = "${rootProject.buildDir}/${project.name}"
}
subprojects {
   project.evaluationDependsOn(':app')
}

task clean(type: Delete) {
   delete rootProject.buildDir
}

预期结果:在 codemagic 上构建应该可以正常进行

4

1 回答 1

4

在代码魔术的 Mikhail 的支持下,以下是解决方案:

maven应该在存储库中 https://docs.gradle.org/current/userguide/declaring_repositories.html#sec:declaring_custom_repository

如下所示:

repositories {
        google()
        jcenter()
        maven {
            url 'https://maven.fabric.io/public'
        }
    }

    dependencies {
        classpath 'com.android.tools.build:gradle:3.3.0'
        classpath 'com.google.gms:google-services:4.2.0'
        classpath 'io.fabric.tools:gradle:1.26.1'
    }
于 2019-07-09T14:03:19.770 回答