Macにgroovyをインストールする

Macにgroovyをインストールする

MacでGradleを勉強するためにgroovyをインストールしました。

ターミナルで

と入力し、実行します。

完了したら、新しいターミナルで

と入力します。(各環境に合わせて修正してください)

最後に

でインストール完了です。

GroovyConsoleを起動する

groovyをインストールしたら、GroovyConsoleを起動します。

で以下が起動できます。

Macにgroovyをインストールする

groovyConsole上でプログラムを記述することができます。

上記コードを書いて、command + rでプログラムが実行されます。

def

変数宣言の際に使用します。defは型指定が行われない(暗黙型変換される)のでコードを書くときはdefより明示的に型指定して変数宣言する方が望ましいです。

groovyはJavaと同じ型が使用できるのでJava経験者ならわかりやすい言語だと思います。

if文

groovyはif文が書けます。

for文

groovyでは色々なfor文が用意されています。

上記コードはリストをループしています。

リストの場合はforの代わりにeachを使用することができます。

eachではitと言う変数が用意されており、itに値が入っていきます。

itを使用しない場合は以下のように記述します。

foreach文

foreachも使えます。

times

数値に対してループすることができます。

switch文

switch文が使えます。

Range

範囲オブジェクトと言うRangeを作成することができます。

1..3 → 1から3を表すオブジェクト

1…3→ 1から2を表すオブジェクト

“a”..”c”→ aからcを表すオブジェクト

Rangeは以下のようにループすることができます。

カッコをつけないと意図する結果にならないので注意です。範囲オブジェクトを変数に代入すればカッコは不要です。

リストのcollectメソッド

リストにはcollectメソッドが用意されています。このメソッドを使用すると各要素を順番に処理することができます。戻り値があります。

リストのinjectメソッド

JSで言うreduceみたいなメソッドです。

各要素を次々処理するメソッドで以下は合計を算出します。

リストのfindメソッド

リスト内の条件に合致する要素の一番最初の要素を返します。

リストのfindAllメソッド

リスト内の条件に合致する要素のリストを返します。

リストのmax/minメソッド

リスト内の最大値、もしくは最小値を返します。

リストにリストを追加する

リストにリストを追加するには+でリストを連結するだけです。

リストから特定のリストを削除する場合はマイナスを使用します。

コメント文

groovyのコメントはJavaと同じです。

//で、その行の末尾までコメントアウトします。

/* 〜 */で複数行コメントアウトできます。

String

GroovyのStringはダブルクオーテーションで囲むと${}の置換変数を展開することができます。

このStringはgroovy.lang.GString型になりますが、必要に応じてjava.lang.Stringに強制的に変換されます。

Bean

Groovyではクラス定義ができます。Javaのようにgetter/setterを記述する必要がなく、lombokを使用する必要もありません。フィールドをprivateにしなければgetter/setterが自動的に用意されます。

マップを定義する

Groovyではマップが定義できます。java.util.HashMapに当たります。

リストと記述方法は似ていますが、key:valueで記述します。

build.gradle

Spring BootでGradleプロジェクトを作成するとデフォルトでbuild.gradleファイルが配置されます。

このファイルはgroovyベースで記述されており、多少はgroovy言語を知っていないと困ることがあります。ここではbuild.gradleで使うことがある文法を紹介します。

buildscriptブロック

buildscriptブロックはビルドスクリプト自体が依存しているライブラリを指定するブロックです。

extブロックは変数を定義するブロックとなります。

dependenciesブロックで${変数名}で変数展開することができます。

buildscript {
ext {
junit5Version = = '5.6.0'
}
repositories {
mavenCentral()
}
dependencies {
classpath 'org.junit.platform:junit-platform-gradle-plugin:${junit5Version}'
}
}

view raw
gistfile1.txt
hosted with ❤ by GitHub

apply plugin

Groovyプラグインを使う場合にapply plugin:javaというように記述します。

javaはコンパイルなどに必要なプラグインとなります。

以下のように纏めてプラグインを書くこともできます。

plugins {
id 'org.springframework.boot' version '2.2.4.RELEASE'
id 'io.spring.dependency-management' version '1.0.9.RELEASE'
id 'java'
}

view raw
gistfile1.txt
hosted with ❤ by GitHub

以下サイトに標準で用意されているプラグイン一覧の記載があります。pmdなども入っています。

標準Gradleプラグイン

sourceSetsブロック

スポンサーリンク
  • このエントリーをはてなブックマークに追加
  • Evernoteに保存Evernoteに保存
スポンサーリンク

コメントをどうぞ

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA