問題タブ [maven-shade-plugin]
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 - maven antrun copy/shade:shade ゴールを動的にスキップする方法は?
複数の小さなサービスで構成されるアプリケーションの構成に maven を使用しています。Java で開発されたほとんどのサービスは、同じビルド ライフサイクル、いくつかの共有リソース (Spring AMQP など) のように、同じ Maven 構成を共有します。
そのため、共有リソースを SuperPom にまとめました。
シェード プラグインは実際にはインストール プロセスを妨げるようには見えませんが、シェード プラグインによって jar ファイルが作成されていないため、antrun プラグインはもちろん、コピーする必要のあるファイルを見つけられません。
shade/antrun プラグインの構成を SuperPom で抽象化したいので、shade/copy ゴールをスキップする必要があります。
私は試しましmvn clean install -Dmaven.shade.skip=true
たmvn clean install -Dmaven.copy.skip=true
、、mvn clean install -Dmaven.shade.shade.skip=true
ここにあなたが遊ぶための小さなサンプルがあります:
javafx - USBからのJavaアプリケーションの実行
クロス プラットフォーム (vista、xp、mac、Linux) を構築しようとしています。アプリケーションを FAT-32 でフォーマットされた USB ドライブに入れる必要があり、どの OS コンピューターでも実行できるはずです。Java/JavaFx を使用してそれを行う予定です。
複数のプラットフォームで実行する方法についてのアドバイス。
こんにちは、上記の要件に対する uber-jar の使用について誰でもアドバイスできますか。ぴったりではないでしょうか。
java - 最終的な Jar に関連する Maven Shade 外部プロパティ ファイル
こんにちは、みんな!!
これがばかげた質問である場合は申し訳ありませんが、私はMavenを初めて使用し、行き詰まりに陥っています!
- MyTest.properties、MoreMyTest.properties を使用するプロジェクトがあります。
- Maven Shade プラグインを使用して、このプロジェクトを .jar ファイルにビルドしましたが、問題なく動作しています。残念ながら、shade プラグインは MyTest.properties を jar ファイル内にパッケージ化しています。
次に、jar を実行しようとすると、このエラーが発生します。
java.io.FileNotFoundException: ファイルが見つかりません: properties/MyTest.properties at file:\C:\Dev\test.jar!\properties\MyTest.properties at ...
IDE 内と、デプロイ時にコマンドラインから jar を実行することの両方で、自分のプロパティにアクセスしたいと考えています。プロパティ ファイルを、jar ファイルの場所の上の相対フォルダー ../lib/ に配置することを考えていました。
私のプログラム内では、次のようにプロパティにアクセスしたいと考えています:
これをPOM.xmlに追加してみました
(上記のコード スニペットでフォーマットが乱れて申し訳ありません!)
しかし、それは機能していません。これについて何か助けていただければ幸いです。コードは非常に大きいため、すべてのコードを投稿したわけではありませんが、私が達成しようとしていることを理解していただければ幸いです。
どうもありがとう、ポール
java - 署名を保持するように maven-shade-plugin に指示する方法は?
私は maven-shade-plugin を使用して、2 つの別々の jar を 1 つの結合 jar に結合しています。
jar の 1 つは署名されていますが、もう 1 つは署名されていません。
プラグインのデフォルト構成を使用すると、署名に必要なダイジェストが新しいマニフェストにないため、壊れた jar が作成されます。
署名ファイルを除外することで jar を「修正」することもできますが、これはもちろん、完全に署名されていない jar になります。
署名されたすべてのクラスが署名され有効なままの結合された jar を作成する方法を探しています。- jar 形式では、この種の jar を使用できますが、shade プラグインにそうするように指示する簡単な方法が見つかりませんでした。
マニフェスト ファイルを適切にマージするには、独自のトランスフォーマーを作成する必要がありますか?それとも、まだ見つからなかったシェード プラグインに適切なオプションが既にありますか?
例:
pom.xml (2 つのモジュール "foo" と "bar" を定義)
foo/pom.xml: (署名されたバーを署名されていない foo に結合します)
bar/pom.xml: (署名付きバーを作成)
両方のモジュールに 1 つの hello-word クラスが含まれている場合、私は機能し、署名されたクラスの存在について通知することを期待java -jar foo/target/foo-1.0.jar
します。jarsigner -verify foo/target/foo-1.0.jar
java - Maven Shade を使用して既存のクラスを変更する
私がやりたいことは、プロジェクト (プロジェクト A) 内の 2 つの既存のクラスを変更することです。これらのクラスは .class 型です。別のプロジェクト (プロジェクト B) で maven shade を使用して、プロジェクト A のこれらのクラスを指摘し、それらに変更を加えて、プロジェクト (プロジェクト A) に送り返したいと考えています。
これどうやってするの?
これまでのところ、プロジェクト (B) を作成し、maven shade プラグインを pom ファイルに追加して、変更したいクラスを指摘しようとしました。これが正しい方法かどうかはわかりません。
これは私のpomファイルです:
やりたい修正について: RexsterApplicationProvider.class クラスを修正したいです。AbstractSecurityFilter.class クラスからいくつかのものをコピーするには
[更新] 新しいプロジェクト (B) の src フォルダーに変更したい 2 つのクラスを追加しました。(これらのクラスは、ここに追加する前に逆コンパイルされています。)
ここからどこへ行けばいいですか?
java - Maven Shade プラグイン: のインスタンスを作成できません
初めて Maven Shade を使用しようとしましたが、行き詰まりました。次のようなエラー メッセージが表示されます。
Maven-Shade を使用する pom.xml 拡張機能のこのテンプレートを pom.xml に追加し、テスト プロジェクトのメイン クラスを入力しました。
私はmaven、特にこのプラグインに精通していません-誰でもこれを手伝ってもらえますか?
maven - Maven Shade と Clover が mvn サイトで機能しない
親プロジェクトといくつかの子プロジェクトがあります。子供の中には、お互いに依存関係を持っている人もいます。例: 親 - > 子 1、親 -> 子 2、子 1 -> 子 2 (子 1 は子 2 に依存)
子ポンは次のようになります。
mvm site-deploy が次のエラーで失敗するという問題に直面しています:
mvn site-deploy は foo-parent レベルから実行されます。
サイトが実行されているときでも、clover が target/clover/ フォルダー内に影付きの jar を作成しようとすることに気付きました。
どんな助けでも大歓迎です。