gradleとgradlew、gradlew.bat (Gradleラッパー) の違い、コマンドを実行できない?

プログラミング
スポンサーリンク

Gradleで生成したプロジェクトに勝手に作られてしまう、gradlewとgradlew.batという2つのファイル。

これらのファイルは、Gradle Wrapper (Gradleラッパー) と呼ばれています。

 

gradlew は、Linux/macOS用のシェルスクリプト。

gradlew.bat は、Windows用のバッチファイル。

この2つの違いは何なんでしょうか?

スポンサーリンク

Gradle Wrapper (Gradleラッパー) はGralde + インストーラー

Gradle Wrapper (Gradleラッパー) を使うと、Gradleがシステムにインストールされていなければ、自動的にインストールしてくれます。

自動ダウンロードするために、インターネットにつながっていないといけません。

 

Gradle Wrapper (Gradleラッパー)はプロジェクトの一部

Gradle Wrapper (Gradleラッパー) はプロジェクトの一部です。

gitで管理し、プロジェクトチームで共有して使います。

 

一方で、システムにインストールしたgradleはどのプロジェクトとも関連しない実行ファイルです。

Gradle Wrapper (Gradleラッパー) は特定のバージョンのGradleに関連付けられます。

したがって、異なるバージョンのgradleがシステムにインストールされていた場合は、関連付けらているgradleのバージョンがインストールされます。

 

Gradle Wrapper (Gradleラッパー) のメリット

それでは、なぜgradleのプロジェクトでは Gradle Wrapper (Gradleラッパー) が勝手に作られてしまうのでしょうか?

 

gradlew の最大のメリットは、gプロジェクトを配布した場合、新規参加の開発者にgradleのインストールを依頼しなくて良い点です。

Gradle Wrapper (Gradleラッパー) を使えば、自動的に最適なgradleがインストールされるからです。

 

antやmavenにはない、メリットです。

gradlew コマンド実行できない (command not found)

gradlew コマンド実行できない (command not found) って表示されますか?

 

gradlewをコマンドラインから実行するには、

./

を追加する必要があります。

 

Linux / MacOS

 

Windows PowerShell

 

コメント