どのように/いつGradleラッパーファイルを生成するのですか?



Answers

Gradleラッパーの生成

プロジェクトビルドgradle

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

// Running 'gradle wrapper' will generate gradlew - Getting gradle wrapper working and using it will save you a lot of pain.
task wrapper(type: Wrapper) {
    gradleVersion = '2.2' 
}

// Look Google doesn't use Maven Central, they use jcenter now.
buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:1.0.1'

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

allprojects {
    repositories {
        jcenter()
    }
}

その後、コマンドラインで

gradle wrapper

あなたのシステムにgradleがない場合は、それをインストールするか、上記の動作はしません。 Macでは、Homebrew経由でインストールすることをお勧めします。

brew install gradle

ラッパータスクを正常に実行してgradlewを生成したgradlew 、システムgradlew使用しないでください。 それはあなたに頭痛の多くを保存します。

./gradlew assemble

上記のgradleプラグインはどうですか?

com.android.tools.build:gradle:1.0.1

バージョンを最新のものに設定し、ツールページチェックしてそれに応じてバージョンを編集することができます。

Android Studioの生成内容を確認する

gradleと最新のAndroid Studioの追加により、プロジェクトのレイアウトが大幅に変更されました。 古いプロジェクトをお持ちの場合は、最新のAndroid Studioでクリーンなものを作成し、Googleが標準プロジェクトとみなしていることを確認することを強くおすすめします。

Android Studioには、古いプロジェクトをインポートする機能もあります。

Question

私はGradle Wrapperの仕組みを理解しようとしています。 多くのソースreposでは、私は次の構造を見ています:

projectRoot/
    src/
    build.gradle
    gradle.properties
    settings.gradle
    gradlew
    gradlew.bat
    gradle/
        wrapper/
            gradle-wrapper.jar
            gradle-wrapper.properties

私の質問:

  1. どのようにしてgradlew / gradlew.bat生成するのですか? プロジェクトを最初に作成したときにそれらを生成するのは1回だけです。変更をコミット/プッシュするたびに生成しますか? どのように生成されますか?
  2. 上の質問と同じですが、 gradle-wrapper.properties gradle/wrapper/*ファイル( gradle-wrapper.properties gradle-wrapper.jargradle-wrapper.properties )については?
  3. プロジェクトの*.gradleディレクトリ内に他の*.gradleファイルが*.gradleます。 これらの追加のGradleファイルは何ですか?それらは何を表していますか? カスタムプラグイン?
  4. settings.gradleに入るプロパティとgradle.properties内で定義する必要があるプロパティの違いは何ですか?



あなたがソースとドキュメントでgradleをダウンロードしたいのであれば、gradle-wrapper.properitesで設定されているデフォルトの配布URLはあなたのニーズを満たしません。これはhttps://services.gradle.org/distributions/gradle-2.10-bin.zipですhttps://services.gradle.org/distributions/gradle-2.10-all.zipこの完全なURLは、Android StudioなどのIDEで提案されています 。フルグラデーションをダウンロードするには、このようなラッパータスクを設定できます:

task wrapper(type: Wrapper) {
    gradleVersion = '2.13'
    distributionUrl = distributionUrl.replace("bin", "all")
}



  1. それらを一度生成しますが、プラグインから新しい機能が必要な場合や、新しいプラグインを必要とする場合は更新してください。

    最も簡単なアップデート方法:Gradle 2.2では、完全またはバイナリのGradleディストリビューションをダウンロードして抽出し、実行することができます:

    $ <pathToExpandedZip>/bin/gradle wrapper
    

    タスクを定義する必要はありませんが、おそらく何らかのbuild.gradleファイルが必要です。

    これにより、 gradlewgradlew.batラッパー、およびgradlew.bat gradle/wrapper/gradle-wrapper.propertiesgradle/wrapper/gradle-wrapper.properties gradle-wrapper.jarが更新または作成され、ラップされた現在のバージョンのgradle/wrapper/gradle-wrapper.propertiesが提供されます。

  2. それらはすべてラッパーの一部です。

  3. 一部のbuild.gradleファイルは、サブプロジェクトまたはモジュールであるサブディレクトリ内の他のファイルまたはファイルを参照します。 それは少し複雑になりますが、プロジェクトが1つあれば基本的に1つのファイルが必要になります。

  4. settings.gradleはプロジェクト、モジュール、その他の種類の名前と設定をgradle.propertiesますが、 gradle.properties 、あなたが好きで、そのように明確になると感じたら、 gradle.propertiesファイルのgradle.properties可能な変数を設定します。






Links