問題タブ [maven-jar-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.
maven - Maven で manifestEntries を共有できますか?
私のマスター POM には、 、 および<pluginManagement>
の構成を定義する場所があります。これらはそれぞれmaven-jar-plugin
maven-war-plugin
maven-ear-plugin
マニフェスト エントリのグループを共有して、新しいアイテムを 3 つの別々の場所に追加する必要がないようにする方法はありますか?
maven - Mavenアーカイバはクラスパスでロック解除されたスナップショットを使用しますが、コピー依存関係はロックされたスナップショットをコピーします
maven-jar-pluginとmaven-dependency-pluginを使用して、アプリケーションの実行可能な「バンドル」を作成しようとしています。ほとんどの場合は正常に機能しますが、依存関係階層にスナップショットがある場合、コピー依存関係の目標は、スナップショット依存関係をロックされたスナップショット(タイムスタンプ付きのスナップショット)に変換するようです。
ただし、archiver-pluginのaddClasspathは、スナップショットの依存関係を変換しません。
- libには、foolib-1.0.1-20130108.143522-8.jarがあります。
- クラスパスにはlib/foolib-1.0.1-SNAPSHOT.jarが含まれています
そのため、アプリケーションを実行できません。
コピー依存関係にSNAPSHOTを変換しないように指示する方法、またはアーカイバプラグインにSNAPSHOTを変換するように指示する方法が見つかりません。
pom.xmlの関連するスニペットは次のとおりです。
java - maven-jar-plugin ファイルのフィルタリング
src/main/java/com/pac/report.pl
私のクラスの一部としてjarファイルにパッケージ化したいperlファイルがあります。
Maven maven-jar-plugin
include ディレクティブを使用して、以下を試してみましたが、Web から引き出した他のさまざまな提案を試しましたが、jar ファイルのクラスの一部として perl ファイルをコピーしません。私が間違っていることを誰かが知っていますか。
編集
また、従来の呼び出しとそれに依存する理由により、ファイルをリソース ディレクトリに配置したくないことを指摘しておきます。
maven - 実行可能 JAR のビルド時に、プロファイルによってアクティブ化された依存関係の名前を変更する
私は Java プロジェクトを構築するために Maven を使用するのはかなり初めてで、対処方法がわからない状況に遭遇しました。
私は 3 つの依存関係を持つ Java アプリケーションを持っていa
ます。ただし、構築しているプラットフォームによっては異なるアーティファクトになるため、これを実現するためにプロファイルを使用しました。ここに私のからのスニペットがあります:b
c
c
pom.xml
a
および成果物は、b
プラットフォームに依存せず、プロファイルと共にアクティブ化されないため、POM レベルで依存関係としてリストされます。簡潔にするために、ここでは示していません。
ここで、プロジェクトの実行可能 JAR をビルドし、コードから生成された JAR と一緒にディレクトリに 、 、および を含めたいa
のでb
、最終的には次のようになります。c
lib/
のマニフェストにmy-project-1.0.0.jar
は適切なクラスパスが含まれているため、ダブルクリックしてアプリケーションを起動できます。dependency:copy-dependencies
とjar:jar
ゴールを使用して、このすべてを機能させます。
そして...それは動作します。唯一の問題は、アクティブなプロファイルとして、またはアクティブなプロファイルに応じて、ディレクトリc
にコピーされる(そしてマニフェストに追加される)ことです。lib/
Class-Path
c-win32-x86-1.0.0.jar
c-win32-x86_64-1.0.0.jar
c-1.0.0.jar
の代わりにdependency:copy
withを使用すると正しいファイル名になりますが、 のエントリは引き続き「完全修飾」アーティファクト名 (つまり) を参照します。destFileName
dependency:copy-dependencies
Class-Path
lib/c-win32-x86-1.0.0.jar
私はこれについて間違った方法で進んでいますか?私がやろうとしていることを達成するためのより簡単な方法はありますか?
maven - jarプラグインを使用してpom.xmlをエクスポートするMaven
jar ファイルの場所を指定するために、jar プラグインに属性を追加しています。しかし、その場所では、maven は jar の生成に使用される pom.xml ファイルをエクスポートしていません。コピープラグイン以外の同じ場所にpom.xmlもエクスポートする方法を教えてください
java - java -jar がマニフェスト ファイルからクラスパスを読み取ることができず、NoClassDefFoundError エラーが発生する
私のMANIFEST.MFファイルは次のようになります
私の main() はクラスパスを出力します -
私はjarファイルを次のように実行しています-
jar ファイルを実行すると、マニフェスト ファイルに設定されているクラス パスが表示されません。への絶対パスしか表示されませんC:\Project-1.0-SNAPSHOT.jar
。どうしてこんなことに?明らかに、java.lang.NoClassDefFoundError
エラーのためにコードの実行に失敗します
maven-jar-plugin
このjarファイルの作成に使用していることに注意してください
maven - Maven one jar プラグインを使用してテスト jar をエクスポートする
pluginを使用maven-one-jar
し、実行可能なjarをエクスポートして使用しました。
このプラグインを使用して、junit テスト クラスと他の依存関係を含む test-one-jar をエクスポートできますか?
pom(.xml) 構成でどのような変更を行う必要がありますか?
maven - maven-jar-plugin 除外の失敗
私たちは、同じ pom ファイルから 2 つの jar を作成しようとしています (そうです、Sonotype のブログ記事を読んで、そうしないようにと言っています)。1 つはすべてのリソースが必要で、もう 1 つは内部の政治的理由で必要だからです。動作すると思われる構成で maven-jar-plugin を構成しましたが、リソースは常に含まれています。pom ファイルの関連部分は次のとおりです。
ビルドすると、期待どおりに OurProject.Jar と OurProject-consumer.jar を取得しますが、すべて同じリソースが各 jar ファイルにあります。
リストまたは特定の拡張機能の代わりに試してみ<exclude>**/*</exclude>
ました。<exclude>**/resources/*.*</exclude>
喜びはありません。基本的なものが欠けていることを願っています。