我一直在尝试将我的项目从Intellij切换到Android Studio,这需要我创建一个build.gradle文件。我知道我可以将每个作为库依赖项添加,但我理想的是希望能够使maven存储库依赖项工作。
每次同步时,我的支持库都会很好地同步,但对于每个第三方库,我都会得到类似的内容
"错误:(30,13)无法解决: com.facebook.android:facebook-android-sdk:3.23.1"
每个图书馆。
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:1.1.0'
}
}
apply plugin: 'com.android.application'
dependencies {
compile fileTree(dir: 'libs', include: '*.jar')
// Google Play Services
compile 'com.google.android.gms:play-services:6.5.87'
// Support Libraries
compile 'com.android.support:appcompat-v7:22.0.0'
compile 'com.android.support:cardview-v7:21.0.3'
compile 'com.android.support:gridlayout-v7:21.0.3'
compile 'com.android.support:mediarouter-v7:21.0.3'
compile 'com.android.support:palette-v7:21.0.3'
compile 'com.android.support:recyclerview-v7:21.0.3'
compile 'com.android.support:support-annotations:21.0.3'
compile 'com.android.support:support-v13:21.0.3'
compile 'com.android.support:support-v4:22.0.0'
// third-party libraries
compile 'com.amazonaws:aws-java-sdk:1.9.24'
compile 'com.facebook.android:facebook-android-sdk:3.23.1'
compile 'com.github.markushi:android-ui:1.2'
compile 'de.hdodenhof:circleimageview:1.2.2'
compile 'it.neokree:MaterialNavigationDrawer:1.3.2'
}
android {
compileSdkVersion 21
buildToolsVersion "21.1.2"
sourceSets {
main {
manifest.srcFile 'AndroidManifest.xml'
java.srcDirs = ['src']
resources.srcDirs = ['src']
aidl.srcDirs = ['src']
renderscript.srcDirs = ['src']
res.srcDirs = ['res']
assets.srcDirs = ['assets']
}
// Move the tests to tests/java, tests/res, etc...
instrumentTest.setRoot('tests')
// Move the build types to build-types/<type>
// For instance, build-types/debug/java, build-types/debug/AndroidManifest.xml, ...
// This moves them out of them default location under src/<type>/... which would
// conflict with src/ being used by the main source set.
// Adding new build types or product flavors should be accompanied
// by a similar customization.
debug.setRoot('build-types/debug')
release.setRoot('build-types/release')
}
}
答案 0 :(得分:20)
添加:
repositories {
mavenCentral()
}
到build.gradle
。现在,您只在构建脚本中定义了repositories
,该脚本仅针对buildscript
本身而不是项目解析依赖关系。
答案 1 :(得分:9)
为了分享信息,我遇到了同样的问题,解决方案也不同了。
就我而言,使用了代理服务器并导致了问题。我需要configure https proxy settings,如gradle behind proxy in Android Studio 1.3中所述。
答案 2 :(得分:7)
如果您使用VPN
|然后,您系统上的Proxy
会在项目的gradle.properties
文件中使用您的代理信息,例如以下代码行:
# HTTP Proxy
systemProp.http.proxyHost={Host Address}
systemProp.http.proxyPort={Port Number}
systemProp.http.proxyUser={Proxy Username}
systemProp.http.proxyPassword={Proxy Password}
systemProp.http.nonProxyHosts={NonProxy Hosts Address} # like: 127.0.0.1,localhost
# HTTPS Proxy
systemProp.https.proxyHost={Host Address}
systemProp.https.proxyPort={Port Number}
systemProp.https.proxyUser={Proxy Username}
systemProp.https.proxyPassword={Proxy Password}
systemProp.https.nonProxyHosts={NonProxy Hosts Address} # like: 127.0.0.1,localhost
现在只需使用适当的数据
替换上述代码中的{.....}
即可
您也可以通过File>Settings
中的代理信息设置Android工作室代理,如下图所示:
现在再试一次......!
答案 3 :(得分:0)
也许这个帮助
.jade
答案 4 :(得分:0)
repositories {
jcenter {
url "http://jcenter.bintray.com/"
}
// mavenCentral() }
答案 5 :(得分:0)
好吧,如果您的网络连接正常(使用代理| VPN或不使用),只需在使用带有turn off'offline mode' and sync
的android studio时尝试gradle 2.3
,这对我有用:)
答案 6 :(得分:0)
这有帮助
allprojects {
repositories {
jcenter()
maven { url "https://jitpack.io" }
}
}
在项目的gradle中