問題タブ [jlink]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - jlink コマンド ライン パラメータ --strip-debug は何を意味しますか?
jlink
コマンド ライン パラメータを使用する効果はどれ--strip-debug
ですか?
jlinkのドキュメントでは、以下を読むことができます。
出力イメージからデバッグ情報を取り除きます
しかし、これは何を意味するのでしょうか? どのタイプのデバッグ情報が削除されますか? スタックトレースの行番号が思い浮かびます。ということですか?
java - モジュール化されていない依存関係を使用して Java 11 でアプリをパッケージ化する方法
Apache Batik と JavaCV を使用する Java Swing アプリを開発および配布しています。Java 1.6、7、および 8 で更新しました。macOS、Windows、および Linux 用のインストーラーは、Javapackager で構築されています。Java 8 は 2019 年 1 月にサポートが終了し、新しい LTS バージョンである Java 11 でパッケージ化して配布するソリューションが見つかりません。
JavaCV も Batik もモジュラー jar を生成しませんが、Java 11 で実行可能な jar をコンパイルして生成できるように再パッケージ化することができました。アプリは正常に動作しますが、配布用にパッケージ化することはできません。javapackager を使用してそこから 11 ランタイムをバンドルするために Java 10 にドロップすることを計画していましたが、jlink を使用してカスタム ランタイムを生成します。JavaCV と Batik はモジュール式ではないため、jlink は失敗します。私のアプリはそれらがなくても正常に動作しますが、jdeps はパッチを適用してモジュラーにするための module-info.class を生成しません。
その結果、コード ベースを Java 8 のままにして、サポートが終了しても出荷する必要があります。
javapackager の代替を作成するための呼び出しがあることは知っていますが、Java 8 が廃止されるまでそれはありません。そして、モジュラー jar をリファクタリングしてビルドし、カスタム ランタイムを生成するには、Batik および JavaCV プロジェクトが必要です。
誰でも他の解決策を提供できますか? 私は何かを逃しましたか?ありがとう。