web-dev-qa-db-ja.com

プラグインが古すぎます。より新しいバージョンに更新するか、Android_DAILY_OVERRIDE環境変数をに設定してください。

今日、私は自分のプロジェクト(分析)のモジュールとしてAndroid SDKからサンプルアプリをインポートしましたが、同期しようとすると突然このエラーが発生しました:Plugin is too old, please update to a more recent version, or set Android_DAILY_OVERRIDE envrinment variable to...

これは私のアプリのgradleファイルです。

apply plugin: 'com.Android.application'

Android {
    compileSdkVersion 22
    buildToolsVersion "22.0.0"
    defaultConfig {
        applicationId "xxx.xxxxxx.xxxxx"
        versionCode 1
        versionName '1'
        minSdkVersion 9
        targetSdkVersion 22
        versionCode 1
        versionName '1'
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-Android.txt'), 'proguard-rules.pro'
        }
    }


    dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.Android.support:appcompat-v7:22.0.0'
    compile 'com.google.Android.gms:play-services:6.5.87'
    compile 'com.Android.support:recyclerview-v7:21.0.0'
    compile 'com.Android.support:cardview-v7:21.0.0'
    compile 'com.facebook.Android:facebook-Android-sdk:3.21.1'
    testCompile 'junit:junit:4.12'
    compile project(':volley')
}

どちらが原因である可能性があるかについて、何か考えがありますか?(私はプラグインバージョン1.1.0-rc1とgradleバージョン2.2およびAndroid Studioバージョン1.1.0を使用しています)

編集:

これが私のトップbuild.gradleです。

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.Android.tools.build:gradle:1.1.0-rc1'

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

allprojects {
    repositories {
        jcenter()
    }
}
175
Mario Norato

CommonsWareが提案したように、Gradle 2.2.1以降(最新のものは2.3)を使用していることを確認してください。

必ずAndroid Studioをアップグレードしてください。ただし、更新が必要な「プラグイン」は次のとおりです。

トップbuild.gradle

変化する:

classpath 'com.Android.tools.build:gradle:1.1.0-rc1'

に:

classpath 'com.Android.tools.build:gradle:1.1.3' // latest 1.5.0

App build.gradle

変化する:

compile 'com.Android.support:recyclerview-v7:21.0.0'
compile 'com.Android.support:cardview-v7:21.0.0'

に:

compile 'com.Android.support:recyclerview-v7:22.0.0' // latest 23.1.1
compile 'com.Android.support:cardview-v7:22.0.0' // latest 23.1.1

Gradle: https://gradle.org/downloads

最新のリビジョンについては、Android SDK Managerを常に確認してください。

Androidビルドツールプラグイン: http://tools.Android.com/tech-docs/new-build-system

Androidサポートライブラリ: http://developer.Android.com/tools/support-library/features.html

最新のプラグインリリースを見るには、Bintray Jcenterページを直接見てください: https://bintray.com/Android/android-tools/com.Android.tools.build.gradle/view .

132
Jared Burrows

解決策(更新日:2016年5月24日):build.gradleを変更する(プロジェクト)

buildscript {
repositories {
    jcenter()
}
dependencies {
    classpath 'com.Android.tools.build:gradle:X.X.X-lastVersionGradle'
    classpath 'com.google.gms:google-services:X.X.X-lastVersionGServices' // If use google-services

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

X.X.X-lastVersionGradle :例えば:2.1.0

X.X.X-lastVersionGServices :例:3.0.0(Firebase Analyticsをサポート)

注:Googleサービスプラグインを使用している場合は、同じバージョンである必要があります(ある場合)。

警告!! - >2.2.0-alphaでJava JDK 8u91およびNetBeans 8.1 を使用していない場合、Unsupported major.minorバージョン52.0がスローされます。

46
SergioLucas

副次的な注意事項として、システムクロックの年設定が変更された後(つまり、2015-> 2016)、まったく無関係な状況で同じエラーが発生しました。クロックを正しいクロックに戻すことで問題が解決しました。

注1:主にまったく同じエラーメッセージが表示されたため、これを投稿していますが、実際のソリューションはプラグインのバージョンの更新(Jared Burrowsによる投稿)とは異なることが判明しています。

注2:使用

classpath 'com.Android.tools.build:gradle:+'

プラグインのバージョンをデフォルトの最新のものにすることができます。ビルドがAPIの変更で破損する可能性があることに留意してください(そのため、Android AP​​Iドキュメントによって推奨されません)、とにかく常にバージョンを更新している場合にのみ、これを使用してください。

31
vaxquis

万が一誰かがこれに苦労しているのですが、私の場合はGradle 1.4 beta 1を使用していますし、それを維持する必要があります。 Android Studioが機能するようにするには、端末に移動して次のコマンドを実行します。

launchctl setenv Android_DAILY_OVERRIDE <your-value-on-error-message>

Android Studioを再起動すると、プロジェクトが再度ビルドされます。

ここにUPDATE 2への賛辞: https://emmanuelbernard.com/blog/2012/05/09/setting-global-variables-intellij/

29
Felipe Duarte

あなたはいつもここで最新のgradleプラグインバージョンをチェックすることができます: https://bintray.com/Android/android-tools/com.Android.tools.build.gradle

だから今日のようにあなたが使用する必要があります:

classpath 'com.Android.tools.build:gradle:2.2.2'

それに応じて。

15
IgorGanapolsky

クラスパスをこのようなあいまいなものに置き換えます。その解決策とそれはうまくいきますが、それは良い解決策ではないかもしれません。

クラスパス 'com.Android.tools.build:gradle:+'

最善の方法は、+をgradleの最新バージョンに置き換えることです。

9
Victor Mwenda

Gradle Pluginの最新バージョンを確認する

Download

アプリ設定の依存関係をに変更する必要があります

buildscript {
repositories {
    jcenter()
}
dependencies {
    classpath 'com.Android.tools.build:gradle:[PLACE VERSION CODE HERE]'

}

}

6
Dinesh Sunny

この問題はGradleのバージョン変更が原因で発生します。あなたのアプリケーションは古いバージョンのgradleを使用しているので、新しいバージョンに更新する必要があります。

この変更はbuild.gradleファイルで行う必要があります。このリンクを見てください http://www.feelzdroid.com/2015/11/Android-plugin-too-old-update- recent-version.html 。 gradleの更新方法を知るために詳細な手順が提供されています。そこ。

タンス

2
Naruto

最新の開発版を使い続けたいのであれば、この問題はあなたの版が十分に古くなるたびに再発する可能性があります。

私は私がこの新しい質問に答えるために最新の開発版と安定版の最新のリストを保管しているので、私は新しい警告が出るたびにそれを修正することができます。

Android Studio 2.0 - プラグインが古すぎる、より新しいバージョンに更新するか、Android_DAILY_OVERRIDE を設定してください

1
Nick Cardoso

私は Android Data Binding を使用していますが、今日も同じ問題があります。

解決するには、

classpath "com.Android.databinding:dataBinder:1.0-rc0"

に:

classpath "com.Android.databinding:dataBinder:1.0-rc1"

1.0-rc0はまだ jcenter にありますが、なぜそれが使用できないのかわかりません。

1
Peter Zhao

私は最終的にこれを解決する方法を得た1。トップbuild.gradleであなたのcalsspathを確認してください、例えば私のものはクラスパス 'com.Android.tools.build:gradle:2.1.0-alpha3'それから https ://jcenter.bintray.com/com/Android/tools/build/gradle/ あなたのものよりも新しいリリースを見つけ、ここで私は2.1.0-beta3を選択し、次にクラスパスを変更してからビルドを起動します。クラスパス 'com.Android.tools.build:gradle:2.1.0-beta3'

1
hugo

'-rcX'部分を削除する解決策は機能します。なぜエラーが発生しているのか、もう少し詳しく説明したいと思います。問題は https://Android.googlesource.com/platform/tools/base/+/master/build-system/gradle/src/main/groovy/com/Android/buildにあります/gradle/BasePlugin.Java#230

バージョンがないか、 'rc'、 'alpha'、または 'beta'を含むプラグインには、デフォルトの40日の「引退年齢」があります。

0
ashoykh

これは、gradleを最新バージョンにアップグレードするように指示するAndroidの方法です。 2つのことができます

  1. Gradleの新しいバージョンにアップグレードしてください。アップグレード後に新しいエラーが発生する可能性があります(たとえば、4.1にアップグレードする場合は、新しい構文に適応する必要があります - 「コンパイル」は無効になりました。「実装」を使用します)。
  2. Android_DAILY_OVERRIDE変数を指定の値に更新します。 「コンピューター」 - >「プロパティー」 - >「システムの詳細設定」 - >「環境変数」の順に選択して、新しい変数を作成するか、既存のAndroid_DAILY_OVERRIDEの値を更新します。名前が示すように、この値は1日と翌日にのみ有効で、再び変数を上書きする必要があります。
0
kshubham07

出力はNonFinalPluginExpiry.Javaからのものです。

例2.4.0-alpha7

https://github.com/c3ph3us/Android-gradle-plugin-source-codes/blob/master/gradle-2.4.0-alpha7-sources/com/Android/build/gradle /internal/NonFinalPluginExpiry.Java

誰かがプラグインを使用したいと思っていて、毎日のgoogle shiをやりたくないのであれば..

どちらも必要です:

  1. プラグインを再コンパイル
  2. マニフェストの "Plugin-Version"を置き換えます
  3. env varを生成して毎日設定するための自動化スクリプトを作成する

         MessageDigest crypt = MessageDigest.getInstance("SHA-1");
         crypt.reset();
         crypt.update(String.format(
                         "%1$s:%2$s:%3$s",
                            now.getYear(),
                            now.getMonthValue() -1,
                            now.getDayOfMonth())
                            .getBytes("utf8"));
        String overrideValue = new BigInteger(1, crypt.digest()).toString(16);
    

Javaの例APP(ソース+ JAR):

  1. FOR GENERATE ADO - JVMを備えたすべてのOS用
  2. LINUX用のSET ENV

https://github.com/c3ph3us/ado

https://github.com/c3ph3us/ado/releases

envをエクスポートしてアイデアやスタジオを起動するbash関数の例:

// eval export & start idea :) 
function sti() {
    export `Java -jar AndroidDailyOverride.jar p`
    idea.sh
}
0
ceph3us

それがあった私の場合は安定版のために行くか、アプリレベルの合格ファイルに合格する
クラスパス 'com.Android.tools.build:gradle:2.2.0-alpha3'

私はそれを変えました

クラスパス 'com.Android.tools.build:gradle:2.1.2'

0
user3326676

ここ数カ月間、私は「プレビュー」バージョンのAndroid Studioを使いました。私はソフトウェアアップデートのために "安定した"リリースに切り替えようとしましたが、それは十分ではなかったし、私はあなたが話すこの有名なエラーを得ました。

私のAndroid Studio 2.2.previewをアンインストールし、最新のstableAndroid Studio(2.1)をインストールすると解決しました:)

0

環境変数Android_DAILY_OVERRIDEを同じ値に設定する例 - b9471da4f76e0d1a88d41a072922b1e0c257745c

これは私のために働きます。

0
Virendra