0
InputStream manifestStream = ServiceController.class.getClassLoader().getResourceAsStream("META-INF/MANIFEST.MF")
Manifest manifest= new Manifest(manifestStream);
上記のコードはjarファイルで、Macのコマンドラインでjarを実行すると、他のマニフェストファイルが読み込まれます。jarを実行したときに不正なmanifest.mfを読み込む理由
私がテストできる限り、このケースはちょうどMACとAWSのサービスインスタンスが表示されますが、WindowsとLinuxサーバは表示されません。これは、このjarがWindowsおよびLinuxサーバーで期待されるマニフェストファイルを読み取ることができることを意味します。
誰かご覧になれますか?
実行されたコマンド:java -jar xxx.jar
私たちのjarファイル内のMANIFEST.MFファイルは1つだけです –
META-INF/MANIFEST.MFを開き、このマニフェストファイルのMain-Classを確認してください。 –
はい、私はこのJARのメインクラスとマニフェストファイルには確信していますが、2つのメインクラスがあります。 '' mainClass:com.xxx.xxx.starter "'、 もう1つは '"メインクラス:rg.springframework.boot.loader.WarLauncher "' –