end0tknr's kipple - web写経開発

太宰府天満宮の狛犬って、妙にカワイイ

Class::Accessor for perl の java版 Lombok である eclipse + gradle な環境へ導入

久しぶりに eclipseを触ったら、すっかり忘れていたので、メモ。

今更、getter() / setter()を大量に書きたくありませんからね。

STEP1 : eclipse への導入

https://projectlombok.org/downloads/lombok.jar をダウンロードし、lombok.jar を実行するだけ。

自身のPCにあるIDE (eclipse)を探し出し、 lombok.jar 導入だけでなく、eclipse.ini の編集まで自動で行ってくれます。

以下、lombok.jar 実行後のインストーラの画面と、インストール後の eclipse.ini

f:id:end0tknr:20181229180427p:plain

-startup
plugins/org.eclipse.equinox.launcher_1.5.200.v20180922-1751.jar
--launcher.library
C:\Users\end0t\.p2\pool\plugins\org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.900.v20180922-1751
-product
org.eclipse.epp.package.jee.product
-showsplash
org.eclipse.epp.package.common
--launcher.defaultAction
openFile
--launcher.appendVmargs
-vmargs
-Dosgi.requiredJavaVersion=1.8
-Dosgi.instance.area.default=@user.home/eclipse-workspace
-XX:+UseG1GC
-XX:+UseStringDeduplication
--add-modules=ALL-SYSTEM
-Dosgi.requiredJavaVersion=1.8
-Dosgi.dataAreaRequiresExplicitInit=true
-Xms256m
-Xmx1024m
--add-modules=ALL-SYSTEM
-Declipse.p2.max.threads=10
-Doomph.update.url=http://download.eclipse.org/oomph/updates/milestone/latest
-Doomph.redirection.index.redirection=index:/->http://git.eclipse.org/c/oomph/org.eclipse.oomph.git/plain/setups/
-javaagent:C:\eclipse\jee-2018-12_v4.9\eclipse\lombok.jar

STEP2 : gradleなprojectへのlombak 導入

build.gradle に 「apply plugin: 'war'」と 「 providedCompile('org.projectlombok:lombok:1.18.4')」 を追加し、 projectの右クリックから「Gradle > Reflesh Gradle Project」を実行するだけ。

以下、build.gradle

buildscript {
    ext {
        springBootVersion = '2.1.1.RELEASE'
    }
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")
    }
}

apply plugin: 'java'
apply plugin: 'war'
apply plugin: 'eclipse'
apply plugin: 'org.springframework.boot'
apply plugin: 'io.spring.dependency-management'

group = 'jp.end0tknr'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = 1.8

repositories {
    mavenCentral()
}


dependencies {
    implementation('org.springframework.boot:spring-boot-starter-web')
    testImplementation('org.springframework.boot:spring-boot-starter-test')
    providedCompile('org.projectlombok:lombok:1.18.4')
}