Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/jenkins/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 从Gradle设置FabricIO键:“0”;Crashalytics开发者工具错误“;_Android_Jenkins_Gradle - Fatal编程技术网

Android 从Gradle设置FabricIO键:“0”;Crashalytics开发者工具错误“;

Android 从Gradle设置FabricIO键:“0”;Crashalytics开发者工具错误“;,android,jenkins,gradle,Android,Jenkins,Gradle,因此,我的build.gradle中有以下代码: defaultConfig { manifestPlaceholders = [fabricKey: getFabricKey()] } def getFabricKey() { String path = System.getenv("HOME") + "/.apikeys/fabric_key.gradle" if (file(path).exists()) { return new File(pat

因此,我的build.gradle中有以下代码:

defaultConfig {

    manifestPlaceholders = [fabricKey: getFabricKey()]
}
def getFabricKey() {
    String path = System.getenv("HOME") + "/.apikeys/fabric_key.gradle"
    if (file(path).exists()) {
        return new File(path).text;
    } else {
        return "null";
    }
}
在AndroidManifest.xml中,我有以下内容:

<meta-data
            android:name="io.fabric.ApiKey"
            android:value="${fabricKey}" />

~/.apikeys/fabric\u key.gradle存在于我的机器上。然而,当我试图构建项目时,会弹出“Crashalytics开发人员工具错误”。 如果我只是放置我的密钥而不是${fabricKey},它就可以正常工作

我做错了什么

另外,我要澄清的是:我想要实现的是,在将apikey从公开访问的git repo中删除的同时,仍然能够在我的Jenkins服务器上生成构建

编辑:

在手动运行gradlew AssembledBug而不是IDE之后,我发现: java.lang.IllegalArgumentException:Crashlytics发现一个无效的API键:myValidApiKey


(其中myValidApiKey是一个在用自身替换${fabricKey}时起作用的键)

听起来路径是错误的,只要找不到结构密钥,就会发生该错误。您是否尝试向gradle方法添加一些日志记录,以查看它是否认为该文件存在?是的,找到了该文件,只是用其他日志记录检查了它。相应地用一些新信息更新了OP。myValidApiKey上是否有尾随空格?不,我已经检查了两次。好的。这显然是代码或文件的问题。我这样做是为了使用环境变量,而不是从文件中读取。它起作用了。我很想首先了解错误的原因是什么。。。但它现在可以工作。听起来好像路径是错误的,只要找不到结构密钥,就会发生错误。您是否尝试向gradle方法添加一些日志记录,以查看它是否认为该文件存在?是的,找到了该文件,只是用其他日志记录检查了它。相应地用一些新信息更新了OP。myValidApiKey上是否有尾随空格?不,我已经检查了两次。好的。这显然是代码或文件的问题。我这样做是为了使用环境变量,而不是从文件中读取。它起作用了。我很想首先了解错误的原因是什么。。。但它现在起作用了。