mike-neckのブログ

Java or Groovy or Swift or Golang

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

みんな Java やってる?

どーも mike です!

GraalVM 編、第XX話は GraalVM のエクスペリメンタルなプロダクト espresso

Java bytecode を Java の上で実行?!

ついに、試してみたよ〜

それでは、スタート!!!

(以上、最近お気に入りのユーチューバーの前口上)

続きを読む

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

GraalVM の native-image はモジュールには未対応ということで、モジュールによるアプリケーションのネイティブ化には一旦諦めましたが、モジュールの仕組みがまだよくわかってないので、もう少し勉強を続けることにした日本で 1,000,000 番目に Java のモジュールシステムに詳しいものです。

今回は Java9 で追加されていた ServiceLoader のファクトリーメソッドによるオブジェクト生成について紹介します。


時間のない人のための 1 行まとめ

  • Java9 のモジュールシステムによって、 ServiceLoader は生成するオブジェクトを従来の引数なしコンストラクターだけでなく、 provide ... with ... ディレクティブに指定されたクラスの providers という static ファクトリーメソッドによって生成できるようになっていた

で、いつもどおりですが、詳しくは ServiceLoaderjavadoc を読むのがおすすめです。

続きを読む

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

GraalVM の native-image で javac のネイティブ化に失敗したことの原因が Java のモジュールシステムの理解不足にあることからモジュールシステムを一から勉強し直している、日本で 1,000,000 番目に Java のモジュールシステムに詳しいものです。

今回は自分でモジュールを書いて ServiceLoader で実装クラスの名前を知らなくてもインスタンスを取得するという実験をやっていきたいと思います。


例によって時間のない人のための 1 行まとめ

続きを読む