サーチ…


Gradle WrapperとGit

序文で説明したように、 gradlewコマンドが実行されたときに使用されるjarがプロジェクトにダウンロードされるため、 gradlew wrapper機能が機能します。しかし、これはコミットされないかもしれませんし、次回プロジェクトがチェックアウトされた後、 gradlewはエラーで実行されません:

Error: Could not find or load main class org.gradle.wrapper.GradleWrapperMain

これはあなたの.gitignoreにJavaプロジェクトの*jarが含まれる可能性が高いためです。グラデルラッパーが初期化されると、それはgradle/wrapper/gradle-wrapper.jarファイルにコピーされgradle/wrapper/gradle-wrapper.jar 。したがって、gitインデックスに追加してコミットする必要があります。そうする:

git add -f gradle/wrapper/gradle-wrapper.jar
git ci

-fを強制することで

Gradleラッパーの紹介

Gradleには、プロジェクトにラッパーを追加する機能があります。このラッパーは、すべてのユーザーまたは継続的インテグレーションシステムがGradleをインストールする必要性を軽減します。また、プロジェクトが使用するバージョンとユーザーがインストールしたバージョンとの間に互換性がないバージョンの問題を防止します。これは、プロジェクトにローカルにバージョンのgradleをインストールすることで行います。

このプロジェクトのユーザーは、単に次を実行します。

> ./gradlew <task> # on *Nix or MacOSX
> gradlew <task>   # on Windows

ラッパーを使用するようにプロジェクトをセットアップするには、開発者は次のようにします。

  1. 実行:
gradle wrapper [--gradle-version 2.0]

--gradle-version Xはオプションで、提供されていない場合(または以下に示すようにラッパータスクが含まれていない場合)、使用されているバージョンは使用されているgradleのバージョンです。

  1. プロジェクトで特定のバージョンを使用するようにするには、 build.gradle次の行を追加します。
task wrapper(type: Wrapper) {
    gradleVersion = '2.0'
}

gradle wrapperコマンドを実行すると、ファイルが作成されます。

the_project/
  gradlew
  gradlew.bat
  gradle/wrapper/
    gradle-wrapper.jar
    gradle-wrapper.properties

この機能の公式ドキュメントはhttps://docs.gradle.org/current/userguide/gradle_wrapper.htmlにあります

Gradle Wrapperでローカルに提供されるGradleを使用する

オンプレミスのGradleのコピーを保持し、Wrapperがビルドでそれを使用できるようにするには、 wrapperタスクのコピーを指すdistributionUrlを設定します。

task wrapper(type: Wrapper) {
    gradleVersion = '2.0'
    distributionUrl = "http\://server/dadada/gradle-${gradleVersion}-bin.zip"
}

gradlew gradle wrapperを実行すると、シェルスクリプトgradlewが作成され、 gradle/wrapper/gradle-wrapper.propertiesは、提供されたURLを使用してGradleをダウンロードするように構成されます。

プロキシの背後にあるGradle Wrapperの使用

ユーザーは、プロジェクトの初回実行時gradlew 、二つの重要なことを行うということを認識すべきです。

  1. ラッパーが使用しているgradleのバージョンが既に〜/ .gradle / wrapper / distsにあるかどうかを確認してください
  2. そうでない場合は、インターネットからバージョンのアーカイブをダウンロードしてください

すべての外部トラフィックがプロキシを通過する必要がある環境にいる場合、ステップ2は失敗する(透過的なプロキシ環境でない限り)。その結果、 JVMプロキシパラメータが設定されていることを確認する必要があります。

たとえば、認証なしで基本的なプロキシ設定を行っている場合は、環境変数JAVA_OPTSまたはGRADLE_OPTSを次のように設定します。

-Dhttps.proxyPort=<proxy_port> -Dhttps.proxyHost=<hostname>

したがって、完成したウィンドウの例は次のようになります。

set JAVA_OPTS=-Dhttps.proxyPort=8080 -Dhttps.proxyHost=myproxy.mycompany.com

ただし、環境にも認証が必要な場合は、他のオプションもhttps://docs.oracle.com/javase/8/docs/api/java/net/doc-files/net-propertiesで確認してください。 html

注:このプロキシ設定は、依存関係リポジトリへのアクセス用のプロキシ設定に追加されています。



Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow