mike-neckのブログ

JavaかJavaFXかJavaEE(なんかJava8が多め)

gradle

ArtifactoryのDockerイメージとgradleでのartifactのデプロイのメモ

少々こまったことがあったので、Artifactoryを調べたので、そのメモ。なお、数年前も同じことを調べたという記憶があるのだが、メモを残していなかったのであらたに調べることになった… 書かれていること ArtifactoryのイメージをビルドするDockerfile プロ…

Gradle2.11の新機能を試してみた(1)

Gradle2.11でJavaソフトウェアモデルに対してJUnitによるテストがサポートされたので試してみました。 基本 ディレクトリー構成は以下のとおりです。 root └─src ├─data │ └─java ├─data.test │ └─java ├─exceptions │ └─java └─functions └─java 使用するJa…

Gradle2.11リリースノート意訳(また途中)

gradleのバージョン2.11がとっくの昔に出ていたので、リリースノートを意訳しておきました。 原文はこちら Gradle2.11ではソフトウェアモデルとIDE連携およびコンティニュアスビルドを強化しています。 ソフトウェアモデル改善はGradleの現在の目標となって…

Gradle2.10のリリースノート意訳

久々にパソコンの前に座ったので、リハビリ代わりに先月にリリースされたGradle2.10のリリースノート意訳というか、中途半端に翻訳した。分量が多かったので訳してないところがありますが、引き続き入院してるので、翻訳の続きはありません。 オリジナル(英…

GradleのJVM component modelスタイルのプロジェクトをJigsawでビルドする #gradle #java #jigsaw

前回のエントリーでGradleにおけるJVM component modelの実践的な内容を紹介した。 mike-neck.hatenadiary.com ここで紹介したプロジェクトのビルド成果物はこちらのエントリーでも紹介した、Javaモジュールシステム的な考えが採用された成果物である。つま…

Gradle3におけるJavaプロジェクトのビルド入門(4) -- 実践編 #gradle

Gradle3におけるJavaプロジェクトのビルド入門の一連の記事ではJVM component modelによるJavaプロジェクトのビルド方法について紹介してきた。その過程でJDK9より導入されるJigsawとの関連も指摘しておいた。 この記事では実践的なJVM component modelによ…

Gradle3におけるJavaプロジェクトのビルド入門(3) -- 用語の再確認とJigsawとの関連 #gradle

今回はJVM component modelにおける用語について整理しておく。 前回、前々回とGradle3におけるJavaプロジェクトのビルドにおけるJVM component modelの入門を行っていった。 mike-neck.hatenadiary.com mike-neck.hatenadiary.com また、JVM component mode…

Jigsawについて雑にまとめてみた

以前、Gradle3におけるJavaプロジェクトのビルドについてのエントリーを書きましたが、Gradle3のJVM component modelって、まあ、わりと、Java9のJigsawみたいなものなんですね。で、Jigsaw自体知っている人が多いと思いますが、あらためてJigsawが解決した…

Gradle-2.9-rc1のリリースノートで訳し忘れてたライブラリーAPI定義について意訳(JDK9にも関連) #gradle

意訳には(僕に)定評のあるGradleのリリースノートですが、前回訳した時に、意図して訳さなかったのか、JavaOne開催中でProject Jigsaw関連に合わせるためにその時には書かれていなかったのか、どっちか定かではありませんが、リリースノートの意訳にExplicit…

Gradle3におけるJavaプロジェクトのビルド入門(2) #gradle

前回は、JVM component modelによるJavaプロジェクトのビルドの入門をおこなった。 mike-neck.hatenadiary.com これまでのjavaプラグインに比べると記述量が増えてしまうが、遜色ないビルドができることは示せたと思う。 複数ライブラリー(コンポーネント) …

Gradle3におけるJavaプロジェクトのビルド入門(1) #gradle

Gradleは元々の作りが非常にブラックボックスなため、設定されたオブジェクトのライフサイクルがわかりづらいなどの問題があり、Gradle3に向けて、それを修正している最中です。その中核となるのがRule Based Model Configurationという仕組みです。 その仕…

Gradle-2.9-rc1が11月4日に利用可能になってました #gradle

10月1日にGradle2.8-rc1が出たという記事を書いてから、1ヶ月、Gradle2.9-rc1が2015/11/4に出ています。 mike-neck.hatenadiary.com というわけで、いつもどおりリリースノートの意訳 Gradle TestKitがもっと便利になった Gradle TestKitがGradle2.6で出てか…

今 gradle.org に何が起きているのか?

gradle,org に何か異変っぽいものが起きているらしいです。 Gradleさんどうなってしまったの https://t.co/L1ssx97cY4— Yasuharu Nakano (@nobeans) 2015, 10月 26 僕も昨晩確認してみたところ、こんなページになっていました。 @saba1024 なんか、直ってた …

Gradleからdockerを起動して分散テストさせてみた #gradle #docker

昨日のエントリーの続きです。 mike-neck.hatenadiary.com Gradle万能派の僕には、納得がいかなかったので、最後までやってみることにしました。 切り捨てたこと まず、分散テストは何が目的なのか考えると、テスト結果をマージすることが目的なので、以下の…

Gradleからdockerを起動して分散テストさせようとしたのだけれども

標記の件について、ここ2日間取り組んでいます。もちろん、ボランティアです。 元ネタはじょーたにさんに教えてもらったこのツイート。 JUnitの実行を各クラス毎に並列で実行して、かつそれぞれをDockerで実行してくれるようなものは無いかな..— たむたむ (@…

Gradle2.8 rc1が出たようです。 #gradle

世間ではBazelが流行っていますが、Gradle 2.8 rc-1 が2015/10/1 2:15am頃に出たようですので、リリースノートの超意訳を書きます。 discuss.gradle.org リリースノートはこちらから ダウンロードはこちらから なお、sdkmanでも取得可能のようです。 ~ $ sdk…

今更だけど、Gradleをちゃんと勉強しよう - Task同士の協調

今度のJava女子部の勉強会でGradleの講師をさせていただくことになりました。 javajo.doorkeeper.jp それほど高度な内容は扱わないのですが、入門レベルの復習をされたい方はご参加いただくとよいかもしれません。 で、その勉強会の中でGradleのタスク同士が…

Payara-micro meets Gradle, Gradle Payara Plugin(unofficial) is available! #gradle #payara

meets Gradle Payara plugin is available now! Detail information is available at gradle plugin portal. And the repository is here. mike-neck/gradle-payara-unofficial-plugingithub.com Install Add following script to your build.gradle, you ca…

Gradle Payara plugin(unofiicial)をリリースしました

meets GradleのPayaraプラグイン(unofficial)をリリースしました。 org.mikeneck.payara-pluginで詳細な情報が記述されています。 また、レポジトリーはこちらです。 mike-neck/gradle-payara-unofficial-plugingithub.com 使い方 プラグインの導入 以下のビ…

今更だけど、Gradleをちゃんと勉強しよう - Gradleのプロパティいろいろ

以前のエントリーでgradle.propertiesのチートシート(中途半端)を書いたわけですが、Gradleのプロパティを作る方法はgradle.properties以外にもあって、そこらへんをまとめてみました。 gradle.propertiesで設定する propertyName=some value と記述するとpr…

今更だけど、Gradleをちゃんと勉強しよう - Gradleのタスク実行フェーズ その2

Gradleでなんらかのタスクを作って、実行してみると遅い時がありますね。 まあ、大量のファイルをコピーしてzipで固めるなんて場合は、遅いのは仕方ないです。しかし、cleanとかtasksとかコピーと関係のないタスクまで遅くなるようなことがあれば、設定フェ…

今更だけど、Gradleをちゃんと追いかけよう - gradle2.7-rc1がリリースされました

Gradle2.7-rc1が2015/08/29の0:00頃にリリースされたようです。Gradleは2ヶ月に1回リリースするので、正式版は10月になると思います。今は人柱になりたい方が試してみるとよいと思います。 Gradle 2.7-rc-1 is now available for testingdiscuss.gradle.org …

今更だけど、Gradleをちゃんと勉強しよう - gradle.propertiesチートシート

gradle.propertiesのチートシート なんか、デーモンをデフォルトで使うときのgradle.propertiesのキーが何だったか忘れることが多いので、面倒だけどまとめた。 ビルド関連 # デーモン使用有無 : true 使う / false 使わない org.gradle.daemon=true # 使うj…

今更だけど、Gradleをちゃんと勉強しよう - Gradleのタスク実行フェーズ - その1

Gradle芸人業を毎日やってるけど、まだまだ全然Gradleのことわかってないなと思う日々なので、ここは基本に帰って、1つずつドキュメントのメソッド、プロパティをためしていくことにします。 第一回はproject.gradle編 gradleプロパティ 初回からマニアック…

GradleでJDK8u60の-parametersオプションがうまく渡ってないっぽかった件の顛末

一昨日のエントリーがなんかすごいバズってしまって、((((;゚Д゚))))ガクガクブルブルしてるのですが、Gradleでビルドした時にテストがコケると言っていました。 Java 8u60で、Mapの初期化とかがすごい楽になってる件 - mike-neckのブログmike-neck.hatenadiary.c…

Gradle プラグインポータルにプラグインを登録する方法 - 20150821-最新版.xls

昨年末頃に発売された『Gradle徹底入門』にはgradleプラグインポータルに登録する方法が付録として掲載されていますが、Gradleの開発速度が非常に速いため、最新の方法と異なっている部分があるので、最新の方法を紹介します。(以前の方法でもできるかもしれ…

Gradle TestKit用のプラグインをリリースしました

表記のとおりです。 動機 Gradle2.6からの機能の一つgradleTestKitはかなり便利なのですが、まだまだ機能不足で、特に自作プラグインを読み込めないところが弱点であると言ってきました。 Gradle2.6の新機能のうち二つを試してみた - mike-neckのブログmike-…

Rule based model generation plugin ver0.2をリリースしました

題名のとおりです。 土曜日にリリースしたGradleのrule-based-model-generationプラグインのバージョン0.2をリリースしました。 Gradle - Plugin: org.mikeneck.rule-based-model-generation リリースした機能 生成されたインターフェースを実装したクラスを…

GradleTestKitを使用する場合の注意点

GradleTestKitいいですね。 プラグイン作った場合は、もうこれなしには生きていけません。 ただ、いくつか問題があるようです。 デバッグは不可能 TestKitは別のプロセスでライブラリーやjarをロードするので、作成したプラグイン実装クラスなどにブレークポ…

Rule Based Model ConfigurationのManagedインターフェースを生成するgradle pluginを作った。

なるべく、わからないようにリリースしたつもりだったのですが、さすがGradleの日本の第一人者、綿引さんにすぐに見つかってしまいました。 @mike_neck さんのプラグインがポータルにあがっておる。https://t.co/YOdb34pLcK #jggug— Takuma Watabiki (@bikis…

Rule Based Model Configurationの @ Mutate フェーズ実装のベタープラクティス(若干)

gradle2.4以来、gradleのRule Based Model configurationに魅力を感じて、いろいろ試しています。 gradle2.4のRule based model configurationがユーザーにとって地味に嬉しい - mike-neckのブログmike-neck.hatenadiary.com 日本人、破壊的な変更が入らない…

Gradle2.6のTestKitで強引に自作プラグインを読み込ませる方法

昨日のエントリーの続き。 Gradle2.6の新機能のうち二つを試してみた - mike-neckのブログmike-neck.hatenadiary.com 昨日のエントリーでは、自作プラグインのテストが書けないという残念なというか、致命的な欠点があったので、強引に自作プラグインを読み…

Gradle2.6の新機能のうち二つを試してみた

JJUG LT大会、行きそびれました。 完全に夜型というか一日の活動時間が6時間くらいしかない僕が夜7時のイベントに参加するなど、到底無理でした(言い訳) 一応、夕方4時くらいには起きていたのですが、雨が降り出して、気分が落ち込んでしまったため、寝て起…

Gradle3.0で一部が激しく変更されるっぽい感じが漂う件

gradleは単なるタスク実行基盤ツールですが、僕が3~4年前に人から「gradleなんてクッソマイナーで型もないgroovy(偏見)のツールなんて誰が使うか」と言われてた頃から比べると、Androidでの採用もあり、かなり普及した感があります。 さて、そんなだいぶ馴…

payara-microのJSONシリアライザーをGensonにするために、なかなかハマった件

比較的新しいJava用のJSONライブラリーGenson - mike-neckのブログmike-neck.hatenadiary.com これの続き。 この記事の終わりの辺りで、 GensonをJerseyで使おう! あっ、それなら今超絶流行りのPayara Microでやってみよう! という流れになったので、Payar…

Gradle Forumsを使う

GradleのRule based model configurationで少しわからないことがあったので、Gradle Forumsを使いました。 わからなかったことは、Managedなモデルが別のManagedなモデルを参照する場合に後者のモデルをどのようにインスタンス化すればいいのかということで…

LTS-Haskell-Initを少し修正した

以前書いたgradleでhaskellの開発環境を整えるやつ mike-neck/LTS-Haskell-Initgithub.com gradleでLTS Haskellのテンプレートを作るやつ作った - mike-neckのブログmike-neck.hatenadiary.com を久々に起動したら、stackageのsnapshotsのパス構成が変わって…

gradleでLTS Haskellのテンプレートを作るやつ作った

何を言っているかわからないタイトルですね。でも字面通りなのです。 StackageのLTS Haskell便利なのですが、更新頻度が週1回くらいあって、次のQiitaの手順を行うのが面倒なので、なんとかしたかったのですが、あまりにシェルちからなさすぎてgradleでやる…

gradle2.4のRule based model configurationがユーザーにとって地味に嬉しい

gradle2.4のリリースノートを先日眺めていたらRule based model configuration improvementsという記述があって、そのユーザーガイドのコードを試してみました。 モデル モデル(POJO)をあらわすインターフェース。Managedアノテーションを付与することによっ…

Gs-Collections code kataをブートするgradleスクリプト作った

GS Collections code kataは一回やったら終わりという感じではなくて、何度もやるみたいなことが書いてあったけど、毎回ダウンロードしてきて、解凍して、IDEで取り込んでってやるのが煩わしかったので、表記のスクリプトというか何度でもやり直しのできるや…

jettyで実行可能warファイルを作る

こんにちわ、みけです。 だんだん寒くなってきて、一日の半分ほどは寝てるような状態です。 ここ数週間(!!!)、JavaFXをサーブレットから叩くアプリケーションを作っているのですが、 最初は単純にwarファイルを作って、 jetty-runnerで走るようにするだけの…

Gradleでアノテーションプロセッサーを使ってソースコードを生成するようなプロジェクトを作ってみる #ソースコード自動生成

こんにちわ、みけです。 前回org.glassfish.grizzly.http.server.CLStaticHttpHandlerと JAX-RS(Jersey)を組み合わせてアプリケーションを作って、 ルートにデプロイしたところ、 片方のハンドラーしか動作しないという残念な結果になってしまいました。 な…

Jerseyをjava -jarで動かす

こんにちわ、みけです。 某ブログで|д゚)チラッしている方がいらっしゃったので、 Jerseyをjava -jarで動かす (Gradle編) を書くことにしました。 Jerseyはサーブレット経由でなく com.sun.net.httpserver.HttpServer や Grizzly 、Jettyで動かす事もできるのでG…

gradleでJUnitのCategoryテストを実行する - 2014年版

こんにちわ、みけです。 Categoryテストをgradleで実施する方法を、 記載しています。 例によってだらだら書いているので、 結果だけ知りたい人は、まとめまで読み飛ばして下さい。 Categoryテスト いまさらですが、渡辺修司さんの『JUnit実践入門』を読んで…

herokuでOpenJDK1.7以上を使っているgradleアプリケーションで、文字化けによるコンパイルエラーへの対処法

こんにちわ、みけです。 くっそタイトルが長いのですが、 ちょっと一昨日くらいにハマったので メモ代わりに書いとこうと思ったので… 問題 : OpenJDK1.7以上で日本語を含むソースコードをコンパイルするとエラーが発生する 日本語をソースに書かない人は特に…

インテグレーションテストを実行するためのbuild.gradleの記述法

こんにちわ、みけです。 某社で一日中ドラクエやってて、 何の成果もあげていません。 … あ、いや、そんなことはどうでもいいです。 いや、よくないか。 インテグレーションテストとは… とりあえず、ここでは、乱暴な言い方ですが、 ソフトウェアの機能に対…

Gradleでherokuアプリケーションを作成する

こんにちわ、みけです。 なんかgithubでブログやってたのですが、 なんかoctopressが調子悪くて、はてなで書くことにしました。 それ以前に僕が調子悪いですけど… Gradleでherokuにアプリケーションをデプロイする Gradle herokuで検索をするとGradleで作っ…