mike-neckのブログ

Java or Groovy or Swift or Golang

graalvm-native-image-plugin の v1.4.0 をリリースしました

表記の通り、 Gradle プラグインの graalvm-native-image-plugin の v1.4.0 をリリースしました。 plugins.gradle.org このリリースでは以下の機能が追加されました。 シェアードライブラリーをビルドする機能(Java11 以降のみ) 上記の機能追加に伴う、 nati…

graalvm-native-image-plugin を使用している際に、 The command line is too long というエラーメッセージが表示される場合の対応方法

Windows 環境にて、 graalvm-native-image-plugin を利用している際に、タイトルにあるようなエラーが発生することがあるようです。 github.com どのような形にするのが良いか解決方法を検討中ですが、一時的に回避する方法として、 jar の Class-Path アト…

graalvm-native-image-plugin の 1.3.0 にて SerializationConfigurationFiles オプションに対応しました

graalvm-native-image-plugin のバージョン v1.3.0 をリリースしました。このリリースでは、 native-image-agent で生成された serialization-config.json ファイルのマージ、 SerializationConfigurationFiles オプションのサポートを追加しました。以下の…

GraalVM の espresso を試してみただけの試したエントリー

みんな Java やってる? どーも mike です! GraalVM 編、第XX話は GraalVM のエクスペリメンタルなプロダクト espresso Java bytecode を Java の上で実行?! ついに、試してみたよ〜 それでは、スタート!!! (以上、最近お気に入りのユーチューバーの前…

「第6回Reactive System Meetup in 西新宿」にいってきた #reactive_shinjuku

家が近いので 第6回Reactive System Meetup in 西新宿 に参加してきた

Jigsaw でサービスプロバイダーを定義した場合には、 ServiceLoader は従来の引数なしコンストラクターに加えて provider という名前の static ファクトリーメソッドでオブジェクトを生成できる

ServiceLoader で provide というスタティックメソッドを持ったクラスからもインスタンスを取得できる

Java のモジュールと ServiceLoader その2 マルチプロジェクトで実験

Java9 のモジュールを利用すると `provide ... with ...` ディレクティブによって provider configuration ファイル(`META-INF/services/xxx.yyy`) を書かなくても `ServiceLoader` でインスタンスを取得できる

Java のモジュールと ServiceLoader

多分、日本で1,000,000番目に Java のモジュールシステムに詳しい人間になれた気がする— 引きこもり持田 (@mike_neck) 2021年2月18日 GraalVM の native-image で、 javac のネイティブイメージを作成した際に、 JavacTool(JavaCompiler の実装クラス) とい…

2020年に買ったもの

タイトルにある通り買ったものでわりとよく使っている(消費している)もの。 ちなみに家が狭いので 2020 年に買ったものはほとんどが 消費するものか kindle の書籍だった。

graalvm-native-image-plugin を GraalVM 20.3 に対応させました

少し前になりますが、 graalvm-native-image-plugin を最新の GraalVM 20.3 に対応させました。

Kotlin の基礎を身につけるための学習素材を作ってみた

プログラム書くの遅い人、 仕様が整理できてないか、 IDE を使い慣れてないか、言語の標準 API を覚えてないかのいずれかなので、勉強し直してきてください— 引きこもり持田 (@mike_neck) 2020年12月26日 Kotlin を使ったプログラムを書く場合には以下の要素…

Interface に対してプログラミングする

interface に対してプログラミングするのがベストプラクティスであるとする考え方が、 Java のプログラミングにあるようです。 依存関係を切断・逆転できて便利とか、インターフェースが変わらない限りは実装が変更されても利用するクラスは変更されないなど…

GraalVM 20.3 から TraceClassInitialization オプションの指定方法が変更になっていた

GraalVM 20.3 から TraceClassInitialization オプションが boolean 指定ではなく、 List 指定になっています。 そのため、 20.2 まで以下のようにオプションを指定していた場合、カンマ区切りの FQCN に修正する必要があります 〜 20.2 まで -H:+TraceClass…

java プラグインの compile/runtime Configuration が 6.8 の次の 7 からなくなるらしいです

タイトルにあるようなツイートを見かけたので、念の為に。 Heads-up folks, next Gradle version after 6.8 will be 7.0! Be ready...— Cédric Champeau (@CedricChampeau) 2020年12月10日 雑な訳 6.8 の次は 7.0 だよ、いいね Don't forget this version re…

JJUG ナイトセミナーでの初登壇で触れた Gradle の Java toolchain の実験

JJUG ナイトセミナー初登壇してきた(LT は除く)。 で、これはその補足。 最後駆け足で紹介していた最近の Gradle の情報で、 Java toolchain(6.7) improovements(6.8) を実際に試してみた なお、すでに Java toolchain についてはすでにいくつかブログが書か…

あなたの知らない Gradle の kotlin-dsl プラグイン

やんくさんに頼まれたので、誰かが書くだろうと思って待ってたけど誰も書かない Gradle の kotlin-dsl プラグインについて書きます。 @mike_neck mikeさんアドベントカレンダー書くネタあったりしませんか?https://t.co/ZDwmyBpbC0— やんく (@yy_yank) 2020…

ffmpeg で色のバランスを変更する

colorbalance オプションを指定して変更する このオプションの指定方法は次のパラメーターがある rs/gs/bs 一番小さい値を指定する(-1.0 〜 1.0) rm/gm/bm 真ん中の値を指定する(-1.0 〜 1.0) rh/gh/bh 最も高い値を指定する(-1.0 〜 1.0) このオプションに…

JetBrains の Compose for Desktop で build.gradle.kts でなく build.gradle を使う

どうも、 build.gradle.kts の良さがわからない老害おじさんです 標記の件、以下の通りにやれば動きます。多分 settings.gradle pluginManagement { repositories { gradlePluginPortal() maven { url "https://maven.pkg.jetbrains.space/public/p/compose/…

JJUG CCC 2020 Fall で jq の発表をしてきた

JJUG CCC 2020 Fall で jq の話ししてきたけど

人生初のダイエットやってみたら 2 ヶ月で 8 キロ弱減った件

表記の通り、ダイエット(と言っても大したことはしていない)をやってみたら、 8 キロ弱減った。 2ヶ月の散歩の成果です pic.twitter.com/CZtYSRrFOM— 引きこもり持田 (@mike_neck) 2020年10月24日 きっかけは健康診断で体重が 73 キロ(身長175cm) になって、…

GitHub Actions で PR を作るときの注意

.github/workflows 内のファイルを変更するときに、トークン secrets.GITHUB_TOKEN にはスコープ workflows が与えられていないので別途 workflows のスコープのついたトークンを用意する必要がある

jq のユニットテストフレームワークを作ってみた

jq

今度 jq をテーマにして JJUG CCC で発表するのですが、 jq のスクリプトに対するテストフレームワークはないのか探してみたところ見つけられなかったので、テストフレームワーク(フレームワークと言うには機能が足りないが…)を作ってみた。なお、見つけられ…

jq を shebang で起動する

jq

ファイルの先頭の shebang を記載する際に -f オプションを与えればよい #!/usr/bin/env jq -f .Contents

jq のバインディングオペレーターを使ったときの挙動が怪しいときに見るべきページはここ

jq

問題 === 次の jq スクリプトを実行したときの結果はどうなるか? ただし、 `jq` コマンドのオプションには `-n` と `-r` を与える。 ```jq (0, 1, 2) | . * 2 as $m | "[\(.) -> \($m)]" ```

『モブプログラミング ベストプログラミング』を読み終わった

日本でモブプロが話題になってから約 3 年、日本で出版されてから 1 年半くらい経過したでしょうか、やっと 『モブプログラミング ベストプラクティス』を読み終わった。

雑記 - Fiber はなくなりました

…え、あれ? Fiber なくなったの? Project Loom はコケたということ?マジで?!調べてみた!

java -version の結果

たぶん @yamadamn さんが既にやっているやつ。 調べることにした経緯は、 aws amplify cli のバージョンチェックがおかしいため。 github.com 上記のチェックでは、 java -version の結果が /(\d+\.)(\d+\.)(\d)/g にマッチすることを前提にしているが、どう…

github から Gradle のリリースのリストを取得して、 jq で RC 以外で各マイナーバージョンで最新のバージョンの値を取得する

jq

単なる jq のメモ。 やりたいこと github から release の一覧を取得して、 RC 以外のバージョンの最新バージョンの値を取得する GitHub API 例えば Gradle のリリースは、 GitHub の ドキュメント によると次の URL で 40 件ほど取得できる https://api.git…

GraalVM コミュニティー版のバージョンロードマップ

正確なものは公式ドキュメントを読んでください。これは 2020-08-09 時点の単なるメモです。 www.graalvm.org マイナーフィーチャーリリースは 3 ヶ月ごとに行われる 2, 5, 8, 11 月の 17 日 新しいフィーチャーリリースは以前のものに取って代わる(以前のも…

Kotlin 愛好会で発表した #love_kotlin

テストフレームワーク ktcheck の宣伝も兼ねて発表してきた love-kotlin.connpass.com 資料はこれ サーバーサイド Kotlin のテストフレームワーク事情 from Shinya Mochida www.slideshare.net 現在勤めている会社のテストのほぼすべては kotlintest(現 kote…