Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/actionscript-3/6.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 studio编译gradle文件时,ANDROID_HOME为空_Android_Gradle_Android Studio - Fatal编程技术网

ANDROID studio编译gradle文件时,ANDROID_HOME为空

ANDROID studio编译gradle文件时,ANDROID_HOME为空,android,gradle,android-studio,Android,Gradle,Android Studio,我有以下gradle文件: /// Top-level build file where you can add configuration options common to all sub-projects/modules. buildscript { repositories { jcenter() } dependencies { classpath 'com.android.tools.build:gradle:1.0.0'

我有以下gradle文件:

/// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:1.0.0'

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

allprojects {
    repositories {
        jcenter()
        def home = System.getenv("ANDROID_HOME");
        // Work around https://code.google.com/p/android/issues/detail?id=69270.
        File file = new File(home);
        maven {
            url new File(file.absolutePath, "/extras/android/m2repository/").toURI().toString()
        }
        maven {
            url "http://localhost:8081/nexus/content/repositories/snapshots"
            credentials {
                username 'admin'
                password 'admin123'
            }
        }
    }
}
当我运行gradle Assembly时,项目成功运行。但是当工作室建造它时,它抛出了一个

Error:(20, 0) Ambiguous method overloading for method java.io.File#<init>.
Cannot resolve which method to invoke for [null] due to overlapping prototypes between:
    [class java.lang.String]
    [class java.net.URI]
错误:(20,0)方法java.io.File#的方法重载不明确。
由于以下对象之间的原型重叠,无法解析要为[null]调用的方法:
[类java.lang.String]
[类java.net.URI]
也就是说,主变量为null。 打开命令行并执行
echo$ANDROID\u HOME
生成正确的目录。我重新启动了android studio。Android studio的版本是1.0.2,gradle的版本是2.2.1。

这是一个老问题,但我最近仍然遇到同样的问题。我正在通过.bash_配置文件设置env变量,并且得到了空值。。。这对我很有用: 通过运行以下命令从命令行启动Android studio:

/Applications/Android\ Studio.app/Contents/MacOS/studio

也许这可以帮助其他有同样问题的人。

检查“studio.sh”中正在使用的环境变量。可能正在使用“studio_home”。谢谢您的回答。问题是,我是从nautilus而不是从cmd开始的,所以出于某种原因,bashrc中的env变量不在那里。一般来说,它不设置环境变量。你为什么要做一个需要$ANDROID_HOME的bug解决方案?那个bug似乎已经过时了。同意
mavenLocal()
现在应该可以工作了。谢谢大家。mavenLocal解析到我的主maven存储库,在那里找不到android库工件。它们位于SDK管理器创建的repo中。我一定错过了什么。