Java9では,ようやくJigsawが導入され,モジュール化ができるようになります. 一方,SPI(SurviceProviderInterface)と呼ばれる仕組みがあり,広く利用されています. 今回は,JigsawでSPIを扱うための方法を紹介します. Jigsawの基礎知識はある程度あるものと想定します. もしも分からない部分があれば,櫻庭さんの記事*1 *2 *3 *4 *5 *6が分かりやすくまとまっているので,そちらをご参照ください. SPIとは SPIはSurviceProviderIntefaceの略で,あるプログラムやライブラリに対して,第三者が実装を提供するため仕組みです. SPIはJDBCやPluggable Annotation Processing APIなど,多くの場面で利用されています. ライブラリはSPIとなるインターフェースを提供し,java.util.S