我正在尝试赶上使用Gradle构建的Android项目,并且只使用Android的支持库时遇到了麻烦:
$ ./gradlew
[ ... succeeding part ... ]
FAILURE: Build failed with an exception.
* What went wrong:
A problem occurred configuring project ':myproject'.
> Could not resolve all dependencies for configuration ':myproject:_debugCompile'.
> Could not find com.android.support:appcompat-v7:23.1.1.
Searched in the following locations:
https://jcenter.bintray.com/com/android/support/appcompat-v7/23.1.1/appcompat-v7-23.1.1.pom
https://jcenter.bintray.com/com/android/support/appcompat-v7/23.1.1/appcompat-v7-23.1.1.jar
Required by:
android_core: myproject:unspecified
我的SDK额外文件夹中提供了appcompat
个库,我的环境设置得很好(ANDROID_HOME
,有时也是多余的ANDROID_SKD
。我仍然在其他项目中使用Ant,并且所有项目都很好。
我已将mavenCentral()
添加到build.gradle
配置文件中,不情愿地同时访问了顶层项目和子项目。
现在我想我需要告诉Gradle搜索我的本地安装,但我没有找到如何做到这一点。我也很惊讶我需要改变构建配置。虽然所有其他人都使用Android Studio,但它适用于其他人。
答案 0 :(得分:1)
这是问题的解决方案。
虽然我的Android支持库与基于Ant的项目运行良好,但事实证明Gradle(似乎)期待另一种类型的库。安装 Android支持存储库后,一切正常。
如果您遇到同样的问题,可以检查存储库的SDK安装。
在CLI上:
required init?(dictionary: [String: AnyObject]) {
guard let someValue = dictionary["someValue"] as? Bool else { return /*nil*/ } //Nil should not be commented here
self.someValue = someValue
super.init(dictionary: dictionary) //`self` used before super.init call
}
我应该感谢我的线下同事Kuwata-san带来了这个解决方案!
答案 1 :(得分:-1)
您应该在root build.gradle文件中添加jcenter(),就像这样
repositories {
jcenter()
mavenCentral()
}