最新の安定バージョンについては、Spring Boot 3.5.7 を使用してください! |
実行可能な Jar の制限
Spring Boot Loader パッケージアプリケーションを使用するときは、次の制限を考慮する必要があります。
Zip エントリ圧縮: ネストされた jar の
ZipEntry(標準 Javadoc) は、ZipEntry.STORED(標準 Javadoc) メソッドを使用して保存する必要があります。これは、ネストされた jar 内の個々のコンテンツを直接シークできるようにするために必要です。ネストされた jar ファイル自体のコンテンツは、外側の jar 内の他のエントリと同様に、圧縮できます。
システム classLoader: 起動されたアプリケーションは、クラスをロードするときに
Thread.getContextClassLoader()を使用する必要があります(ほとんどのライブラリとフレームワークはデフォルトでそうします)。ClassLoader.getSystemClassLoader()でネストされた jar クラスをロードしようとすると失敗します。java.util.Loggingは常にシステムクラスローダーを使用します。このため、異なるロギング実装を検討する必要があります。