背景: 私のプロジェクトでは、Web から画像を取得し、保存する前にサイズを変更する必要があります。そのために、Java の ImageIO API を使用する imgscar を使用して画像のサイズを変更します。
問題は、ImageIO API が JPEG の CMYK カラー スペースをサポートしていないように見えるため、データ プロバイダーから取得した一部の画像を読み取れないことです (画像形式を変更できません)。
CMYK のサポートを追加するために、ImageReaderSpi 拡張機能である素敵なライブラリ (maven アーティファクトとしてパッケージ化し、少し強化しようとしています) を見つけました。
ここまでは順調ですね。私が直面している問題は、拡張機能が ImageIO API によって読み込まれていないように見えることです。存在しないかのように動作します。
META-INF/services/javax.imageio.spi.ImageReaderSpi
拡張機能の実装と、Spi を実装するクラスの名前を含むファイルを含む単純な jar である Maven アーティファクトを作成しました。
ヘルパーを使用していて見つかったので、jarがクラスパスにあると確信しています。
記録のために、私はプロジェクト (WAR) を Tomcat にデプロイしており、拡張 jar はWEB-INF/lib
フォルダーにあります。
jar ソース コードはここで入手でき、maven ビルド中に META-INF ファイルがインクルードされます (@MetaInfServices アノテーションがそれを行います)。
私はここで立ち往生しています。私は正しいことをしていると思います。そのため、あなたの助けを求めています!