android - 获取构建失败并出现异常 Android Studio 0.4.3 和 0.4.4

标签 android build gradle android-studio

这是我的问题:

因为我每次尝试创建一个新项目时都会将 Android Studio 更新到 .4.3,所以我会遇到一些构建失败,每个新项目都会发生这种情况,那里没有我自己的代码...

让我们来看看:

安卓代码:

package com.appgcm;

import android.support.v7.app.ActionBarActivity;
import android.support.v7.app.ActionBar;
import android.support.v4.app.Fragment;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
import android.os.Build;

public class MainActivity extends ActionBarActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    if (savedInstanceState == null) {
        getSupportFragmentManager().beginTransaction()
                .add(R.id.container, new PlaceholderFragment())
                .commit();
    }
}


@Override
public boolean onCreateOptionsMenu(Menu menu) {

    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.main, menu);
    return true;
}

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    // Handle action bar item clicks here. The action bar will
    // automatically handle clicks on the Home/Up button, so long
    // as you specify a parent activity in AndroidManifest.xml.
    int id = item.getItemId();
    if (id == R.id.action_settings) {
        return true;
    }
    return super.onOptionsItemSelected(item);
}

/**
 * A placeholder fragment containing a simple view.
 */
public static class PlaceholderFragment extends Fragment {

    public PlaceholderFragment() {
    }

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
            Bundle savedInstanceState) {
        View rootView = inflater.inflate(R.layout.fragment_main, container, false);
        return rootView;
    }
}

构建.gradle

apply plugin: 'android'

android {
compileSdkVersion 19
buildToolsVersion "17.0.0"

defaultConfig {
    minSdkVersion 7
    targetSdkVersion 19
    versionCode 1
    versionName "1.0"
}
buildTypes {
    release {
        runProguard false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard rules.txt'
    }
}
}

dependencies {
    compile 'com.android.support:appcompat-v7:+'
    compile fileTree(dir: 'libs', include: ['*.jar', '*.aar'])
}

Gradle 控制台错误:

Executing tasks: [:appgcm:generateDebugSources]

Relying on packaging to define the extension of the main artifact has been deprecated     and is scheduled to be removed in Gradle 2.0
:appgcm:preBuild FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':appgcm:preBuild'.
> Build Tools Revision 19.0.0+ is required.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option     to get more log output.

BUILD FAILED

Total time: 3.265 secs

好吧,我认为这些信息足以取出一些东西,我仍然不是真正的 gradle 专家,所以你的解释越详细越好。

非常感谢!

编辑:

我听取了 pyus13 的建议,现在我遇到了另一种错误,这里是:

FAILURE: Build failed with an exception.

* Where:
Build file 'C:\Users\pandolet\workspace\APPGCM\appgcm\build.gradle' line: 1

* What went wrong:
A problem occurred evaluating project ':appgcm'.
> Plugin with id 'android' not found.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

BUILD FAILED

Total time: 0.306 secs

根级build.gradle:

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

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        'com.android.tools.build:gradle:0.8.+'
    }
}

allprojects {
    repositories {
        mavenCentral()
    }
}

最佳答案

首先使用 Android SDK 管理器下载最新的构建工具 19.0.0 和 19.0.1。

然后将 buildToolsVersion "17.0.0"更改为 build.gradle 文件

buildToolsVersion "19.0.0"

因为如发布文档中所述,Gradle 1.10 和 android 插件 0.8 需要 buildTools 19.0.0+

build tools version requirement

还要确保你的根项目级别 build.gradle 文件有 gradle 插件 0.8 作为这样的类路径

    classpath 'com.android.tools.build:gradle:0.8.+'

关于android - 获取构建失败并出现异常 Android Studio 0.4.3 和 0.4.4,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21646502/

相关文章:

Android:通过 Intent 共享文本和图像 (URL)

java - 由 : java. lang.NullPointerException 引起:尝试调用虚拟方法 'java.lang.String com.facebook.Profile.getFirstName()'

gradle - 如何在 Gradle 中基于 Kotlin DSL 构建的多项目中禁用 distZip

java - Gradle : How to call implicit task provided by application plugin from other task

java - Spring 启动 : hot swapping does not work

groovy - 如何在groovy中重用描述类似ant构建逻辑的代码块?

android - 在 WebView 中打开附件

java - Android Studio蓝牙:- attempt to invoke a virtual method on a null object reference

android - android config.xml 的 Cordova 修剪错误

properties - Gradle 中额外属性的范围?