Java Android Studio gradle版本无法添加对旧版本gradle文件的依赖项
我刚刚将旧的gradle项目从ADT导入Android Studio。所有SDK、存储库。。更新。无论如何,我不能将依赖项添加到我的项目中。它总是说找不到。如果我创建一个新项目,一切正常。 这是我的gradle构建文件:Java Android Studio gradle版本无法添加对旧版本gradle文件的依赖项,java,android,eclipse,android-studio,android-gradle-plugin,Java,Android,Eclipse,Android Studio,Android Gradle Plugin,我刚刚将旧的gradle项目从ADT导入Android Studio。所有SDK、存储库。。更新。无论如何,我不能将依赖项添加到我的项目中。它总是说找不到。如果我创建一个新项目,一切正常。 这是我的gradle构建文件: buildscript { repositories { jcenter() mavenCentral() } dependencies { classpath 'com.android.tools.bui
buildscript {
repositories {
jcenter()
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:1.2.3'
}
}
android {
buildToolsVersion "19.1.0"
compileSdkVersion 19
defaultConfig {
minSdkVersion 14
targetSdkVersion 21
multiDexEnabled true
}
dexOptions {
preDexLibraries = false
javaMaxHeapSize '2g'
}
sourceSets {
main {
manifest.srcFile 'AndroidManifest.xml'
java.srcDirs = ['src']
aidl.srcDirs = ['src']
renderscript.srcDirs = ['src']
res.srcDirs = ['res']
assets.srcDirs = ['assets']
}
instrumentTest.setRoot('tests')
}
compileOptions {
encoding "UTF-8"
sourceCompatibility JavaVersion.VERSION_1_7
targetCompatibility JavaVersion.VERSION_1_7
}
}
dependencies {
compile 'com.android.support:multidex:1.0.1'
compile 'com.android.support:support-v4:22.0.0'
compile project(':core')
compile 'org.slf4j:slf4j-android:1.7.7'
compile 'com.google.android.gms:play-services:+'
compile files('libs/App42MultiPlayerGamingSDK.jar')
compile files('libs/google-play-services.jar')
compile project(':facebook')
//compile('com.android.support:appcompat-v7:21.0.3')
}
// needed to add JNI shared libraries to APK when compiling on CLI
tasks.withType(com.android.build.gradle.tasks.PackageApplication) { pkgTask ->
pkgTask.jniFolders = new HashSet<File>()
pkgTask.jniFolders.add(new File(projectDir, 'libs'))
}
// called every time gradle gets executed, takes the native dependencies of
// the natives configuration, and extracts them to the proper libs/ folders
// so they get packed with the APK.
task copyAndroidNatives() {
file("libs/armeabi/").mkdirs();
file("libs/armeabi-v7a/").mkdirs();
file("libs/x86/").mkdirs();
configurations.natives.files.each { jar ->
def outputDir = null
if(jar.name.endsWith("natives-armeabi-v7a.jar")) outputDir = file("libs/armeabi-v7a")
if(jar.name.endsWith("natives-armeabi.jar")) outputDir = file("libs/armeabi")
if(jar.name.endsWith("natives-x86.jar")) outputDir = file("libs/x86")
if(outputDir != null) {
copy {
from zipTree(jar)
into outputDir
include "*.so"
}
}
}
}
task run(type: Exec) {
def path
def localProperties = project.file("../local.properties")
if (localProperties.exists()) {
Properties properties = new Properties()
localProperties.withInputStream { instr ->
properties.load(instr)
}
def sdkDir = properties.getProperty('sdk.dir')
if (sdkDir) {
path = sdkDir
} else {
path = "$System.env.ANDROID_HOME"
}
} else {
path = "$System.env.ANDROID_HOME"
}
def adb = path + "/platform-tools/adb"
commandLine "$adb", 'shell', 'am', 'start', '-n', 'jangkoo.game.shadowfiend.android/jangkoo.game.shadowfiend.android.AndroidLauncher'
}
// sets up the Android Eclipse project, using the old Ant based build.
eclipse {
// need to specify Java source sets explicitely, SpringSource Gradle Eclipse plugin
// ignores any nodes added in classpath.file.withXml
sourceSets {
main {
java.srcDirs "src", 'gen'
}
}
jdt {
sourceCompatibility = 1.6
targetCompatibility = 1.6
}
classpath {
plusConfigurations += project.configurations.compile
containers 'com.android.ide.eclipse.adt.ANDROID_FRAMEWORK', 'com.android.ide.eclipse.adt.LIBRARIES'
}
project {
name = appName + "-android"
natures 'com.android.ide.eclipse.adt.AndroidNature'
buildCommands.clear();
buildCommand "com.android.ide.eclipse.adt.ResourceManagerBuilder"
buildCommand "com.android.ide.eclipse.adt.PreCompilerBuilder"
buildCommand "org.eclipse.jdt.core.javabuilder"
buildCommand "com.android.ide.eclipse.adt.ApkBuilder"
}
}
// sets up the Android Idea project, using the old Ant based build.
idea {
module {
sourceDirs += file("src");
scopes = [ COMPILE: [plus:[project.configurations.compile]]]
iml {
withXml {
def node = it.asNode()
def builder = NodeBuilder.newInstance();
builder.current = node;
builder.component(name: "FacetManager") {
facet(type: "android", name: "Android") {
configuration {
option(name: "UPDATE_PROPERTY_FILES", value:"true")
}
}
}
}
}
}
}
buildscript{
存储库{
jcenter()
mavenCentral()
}
依赖关系{
classpath'com.android.tools.build:gradle:1.2.3'
}
}
安卓{
buildToolsVersion“19.1.0”
编译DK19版
默认配置{
明斯克版本14
targetSdkVersion 21
多索引启用真
}
德克斯选项{
preDexLibraries=false
javaMaxHeapSize“2g”
}
源集{
主要{
manifest.src文件“AndroidManifest.xml”
java.srcDirs=['src']
aidl.srcDirs=['src']
renderscript.srcDirs=['src']
res.srcDirs=['res']
assets.srcDirs=['assets']
}
instrumentTest.setRoot('tests'))
}
编译选项{
编码“UTF-8”
sourceCompatibility JavaVersion.VERSION_1_7
targetCompatibility JavaVersion.VERSION_1_7
}
}
依赖关系{
编译'com.android.support:multidex:1.0.1'
编译'com.android.support:support-v4:22.0.0'
编译项目(“:core”)
编译“org.slf4j:slf4j android:1.7.7”
编译'com.google.android.gms:play services:+'
编译文件('libs/App42MultiPlayerGamingSDK.jar')
编译文件('libs/googleplayservices.jar')
编译项目(“:facebook”)
//编译('com.android.support:appcompat-v7:21.0.3')
}
//在CLI上编译时需要将JNI共享库添加到APK
tasks.withType(com.android.build.gradle.tasks.PackageApplication){pkgTask->
pkgTask.jniFolders=new HashSet()
pkgTask.jniFolders.add(新文件(projectDir,'libs'))
}
//每次执行gradle时调用,获取
//本地配置,并将它们提取到适当的libs/文件夹中
//所以他们被APK包围了。
任务copyAndroidNatives(){
文件(“libs/armeabi/”).mkdirs();
文件(“libs/armeabi-v7a/”).mkdirs();
文件(“libs/x86/”).mkdirs();
configurations.natives.files.each{jar->
def outputDir=null
if(jar.name.endsWith(“natives-armeabi-v7a.jar”))outputDir=file(“libs/armeabi-v7a”)
if(jar.name.endsWith(“natives armeabi.jar”))outputDir=file(“libs/armeabi”)
if(jar.name.endsWith(“natives-x86.jar”))outputDir=file(“libs/x86”)
if(outputDir!=null){
抄袭{
来自zipTree(罐子)
输入输出目录
包括“*.so”
}
}
}
}
任务运行(类型:Exec){
def路径
def localProperties=project.file(“../local.properties”)
if(localProperties.exists()){
属性=新属性()
localProperties.withInputStream{instr->
属性。加载(instr)
}
def sdkDir=properties.getProperty('sdk.dir')
中频(sdkDir){
path=sdkDir
}否则{
path=“$System.env.ANDROID\u HOME”
}
}否则{
path=“$System.env.ANDROID\u HOME”
}
def adb=路径+“/平台工具/adb”
命令行“$adb”,“shell”,“am”,“start”,“n”,“jangkoo.game.shadowfeind.android/jangkoo.game.shadowfeind.android.AndroidLauncher”
}
//使用旧的基于Ant的构建设置Android Eclipse项目。
蚀{
//需要明确指定Java源代码集,SpringSource Gradle Eclipse插件
//忽略在classpath.file.withXml中添加的任何节点
源集{
主要{
java.srcDirs“src”,“gen”
}
}
jdt{
sourceCompatibility=1.6
targetCompatibility=1.6
}
类路径{
plusConfiguration+=project.configurations.compile
容器“com.android.ide.eclipse.adt.android_FRAMEWORK”、“com.android.ide.eclipse.adt.LIBRARIES”
}
计划{
name=appName+“-android”
natures'com.android.ide.eclipse.adt.AndroidNature'
buildCommands.clear();
buildCommand“com.android.ide.eclipse.adt.ResourceManagerBuilder”
buildCommand“com.android.ide.eclipse.adt.PreCompilerBuilder”
buildCommand“org.eclipse.jdt.core.javabuilder”
buildCommand“com.android.ide.eclipse.adt.ApkBuilder”
}
}
//使用旧的基于Ant的构建建立Android Idea项目。
意念{
模块{
sourceDirs+=文件(“src”);
范围=[COMPILE:[plus:[project.configurations.COMPILE]]
iml{
withXml{
def node=it.asNode()
def builder=NodeBuilder.newInstance();
builder.current=节点;
构件(名称:“FacetManager”){
刻面(类型:“安卓”,名称:“安卓”){
配置{
选项(名称:“更新属性文件”,值:“真”)
}
}
}
}
}
}
}
我搜索了几天,但找不到如何使用。
谁能告诉我我的gradle文件哪里出了问题?它来自libGdx构建。
有什么解决办法吗?我可以添加jar文件,但不能添加那些google库。我通过每晚构建Libgdx,创建一个新项目并从旧项目复制源代码来解决我的问题。然后通过Android Studio导入Android库。我想这是因为新的Gradle版本。不能添加任何依赖项吗?确切的错误消息是什么?错误:找不到任何与com.google.android.gms:play services:+匹配的版本。在以下位置搜索:……您是否尝试指定版本:
compile'com.google.android.gms:play services:7.5.0'
如本文所述是的,相同。我尝试了新的模块al