Gradle

JCenter は2022年2月で終了するので Gradle プロジェクトは早めの対応を!

JCenter の終了 JFrog の以下の発表によると、JCenter は 2022年2月1日 で利用できなくなるとのことです。 jfrog.com 当初は 2021年5月1日 で終了でしたが、2022年2月1日 まで延期されました。 Gradle プロジェクトでは、Init プラグインによりデフォルトで …

Gradle で始める Payara 5 〜 CDI・JPA 〜

はじめに データソースの登録 CDI の有効化 JPA の導入 Entity の作成 リポジトリの作成 サービスの作成 リソースの作成 アプリケーションの実行 まとめ はじめに 前回作成した、 blog1.mammb.com に続き、データベース処理を追加してみましょう。 データソ…

Gradle で始める Payara 5

はじめに プロジェクトの作成 Payara を組み込みモードで動かす JUL(Java Util Logger) から SLF4J への変更 buildSrc の追加 war モジュールの作成 Hello サーブレット アプリケーションのデプロイ Hello JAX-RS まとめ はじめに いまさら何故? という気は…

Gradle Groovy DSL から Kotlin DSL への乗り換え方

はじめに スクリプトファイルの命名 Kotlin と Groovy の言語上の考慮事項 Gradle init によるプロジェクト生成 プラグインの適用 プラグインの設定 タスクの構成 タスクの作成 依存の指定 よくある設定 はじめに Gradle 5.0 よりGradle Kotlin DSL が提供さ…

Maven Central Repository への公開手順(Gradle版)

はじめに sonatype で JIRAアカウント作成 New Project の issue 登録 GnuPG の導入 GnuPG による鍵の生成 公開鍵を鍵サーバへ登録 秘密鍵をエクスポート Gradle プラグインの導入 build.gradle の設定 リポジトリへの公開 まとめ はじめに Maven Central Re…

Gradle 5.2 系の BOM サポート

Spring Boot を例に。 Gradle 5.2 から BOM インポートが正式にサポートされました。 implementation platform を使い以下のように書けます。 plugins { id 'java' id 'org.springframework.boot' version '2.1.8.RELEASE' } sourceCompatibility = targetC…

Kotlin を Gradle でビルドする minimal サンプル

Gradle プロジェクトの準備 ソースファイルの作成 ビルド&実行 ビルドスクリプトをKotlinで書く Gradle プロジェクトの準備 init タスクでプロジェクト準備します(gradle は導入済みの前提)。 $ mkdir kotlin-example $ cd kotlin-example $ gradle init kot…

Gradle で評価時の依存を定義するには evaluationDependsOn を使う

Gradle のマルチプロジェクトで、ビルドスクリプトの評価順序を定義するには evaluationDependsOn を使う。 ビルド成果物の依存は dependencies タスク間の実行時依存関係は dependsOn 評価時の依存は evaluationDependsOn ビルド成果物の依存は dependencie…

Gradle Copy タスクのまとめ

Copy タスク Copy タスクは Gradle の core で提供されている。 簡単な Copy タスク例は以下。 task copyConfig(type: Copy) { from 'config' into 'build/config' } gradle copyConfig でタスクを実行すると 'config' ディレクトリにあるファイルを'build/c…

gradle でファイルダウンロードを自動化する

ファイルのダウンロード ダウンロードプラグインを使うと簡単。 plugins { id 'java' id "de.undercouch.download" version "1.2" } repositories { mavenCentral() } task wrapper(type: Wrapper) { gradleVersion = '2.2.1' } task downloadAndUnzip { out…