問題タブ [maven-assembly-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-2 - Maven リリース中の追加アセンブリに対するモジュール間の依存関係
次のモジュールを含むマルチモジュール プロジェクトがあります。
- データベース
- 持続性
- 仕事
- 応用
「データベース」プロジェクトは、「maven-assembly-plugin」を使用して追加のアセンブリを作成する jar プロジェクトです。この追加のアセンブリには、データベース スキーマが含まれています。
プラグインの構成は次のとおりです。
「アプリケーション」プロジェクトは、アプリケーション ディレクトリ構造の圧縮バージョンを作成します。したがって、スキーマ アセンブリを参照して、それを抽出し、アプリケーション ディレクトリ構造内の適切な場所にコピーします。参照は、通常の maven 依存関係として表されます。
少なくとも、1 つのステップでアプリケーションをビルドするために 4 つのサブモジュールを集約するマルチ モジュール プロジェクトがあります。
集約プロジェクトで「mvn deploy」を実行すると、正常に機能します。データベース スキーマ アセンブリが抽出され、コピーされます。しかし、集約プロジェクトのビルドで「mvn release:prepare」を実行すると、「アプリケーション」プロジェクトが失敗し、maven がバージョン「0.0.1」のスキーマ アセンブリを見つけられないというエラー通知が表示されます。ログ ファイルには、'Persistence' プロジェクトが 'Application' プロジェクトの前にビルドされ、'database schema' アセンブリがビルドされたことが示されています。
誰が私が間違っているのか考えていますか?
maven - Maven:結果のアーティファクトとしてアセンブリを使用します-appendAssemblyId == false?
マルチモジュールプロジェクトがあります。
最後のモジュールは「アセンブル」です。これは、配布に使用できる1つの大きな.jarにいくつかのモジュールの.jarをまとめることを目的としています。このモジュールは他に何もしないので、私はこれを行いました:
この動作で、結果のjarをIDE(NetBeans 7.0)から簡単に実行できるようにしたいと思います。
Mavenは私が望むことを正確に実行しますが、次のように述べています。
このメッセージは、私の目標を達成するための推奨される方法ではないようです。もっと良いものはありますか?
maven - Maven アセンブリ プラグインを使用してシェル スクリプトをフィルタリングする方法
Maven アセンブリ プラグインを使用してシェル スクリプトをフィルタリングしようとしています。他のプロパティと xml ファイルは正しくフィルタリングされています。ただし、シェル スクリプトのログに次のメッセージが表示されます。
関連するアセンブリ記述子。
ログ内の上記のスクリプトをフィルタリングしない場合のメッセージを次に示します。
file buildcron.csh has a filtered file extension. このデフォルトの動作を変更する方法はありますか?
PS: txt ファイルでも同様の動作が見られます。
編集:これはPOM.xmlから使用されているプラグインです
ありがとう、プラブジョット
maven - ビルド/プラグインの依存関係を含むMavenリポジトリアーカイブ
クライアントは、ソースからプロジェクトをビルドできることを望んでいますが、ビルドの依存関係を取得するためにインターネットに接続することを望んでいません。これにはプラグインの依存関係が含まれることに注意してください。
私の提案は、チェックサムやメタ情報など、正しいMavenリポジトリファイル構造のすべての依存関係を含むアーカイブをクライアントに提供することです。その後、これを内部Mavenリポジトリとして使用できます。
このようなアーカイブを作成するようにmaven-assembly-pluginを構成しましたが、Mavenがビルドを実行するために必要なすべてのビルド/プラグインの依存関係が含まれているわけではありません。
ビルド時の依存関係をアーカイブに含める方法を知っている人はいますか、またはこれらの依存関係を取得して正しい構造にまとめる別の方法を提案できますか。
どうもありがとう、パット
maven - Maven-assembly-plugin & インクリメンタル ビルド
アセンブリ プラグイン (または jar/war プラグイン) はただのばかげているようです。何もすることがないときはいつでも、彼らは理解できません。
すべての依存関係がターゲットよりも古い場合、基本的な「Makefile」はターゲットを再コンパイルしません。
Mavenの場合、パッケージングは「常に」行われているようです! 「mvn package」を実行してから「mvn integration-test」を実行すると、Maven はパッケージを何度も処理します。私はいくつかのファットスタンドアロンjarを構築しているので、しばらく時間がかかります!
それはあなたのために働く方法でもありますか、それとも私の設定に何か壊れていますか。
ご協力ありがとうございます、
ラファエル
maven - 複数のアセンブル結果
アーティファクトの進行中に作成されたステータスを保持する必要があります。したがって、これらの状態を独自のzipにバンドルし、準備段階で解凍するというアイデアがあります。追加は、展開された実際の結果でもあります。この結果は、作成されたファイルへのバンドルであり、次のアーティファクト内で価値があります。
2つの結果zipを作成しようとしていますが、デプロイ中に2番目のアセンブリ名は無視され、常にmyArtifact-version.zipがデプロイされます。
どうしたの?
よろしくお願いします、スヴェン
私のpomは次のようになります:
アセンブリは次のとおりです。
gen-results.xml:
bundle-gen-status.xml
maven - Mavenアセンブリプラグインは一部のファイルをフィルタリングしますが、他のファイルはフィルタリングしません
Linuxでビルドされているプロジェクトがありますが、Windowsでスクリプトを実行する必要があります。そこで、Windowsでサーバーを起動するためのバッチファイルを生成します。これらはバージョン管理されたjarを参照する必要があります。また、READMEファイルに${project.version}バージョンのタグを付けて、ファイルがどのバージョンに関連しているかをuerが簡単に確認できるようにします。
だから私はアセンブリ記述子を作成します:
READMEファイルには次の行があります
そしてstart-server.cmdに私は持っています
mvn assembly:assembly生成されたアーティファクトを解凍した後
READMEで見つけました:
およびstart-server.cmd内
なぜそれが一方のファイルで置き換えられ、もう一方のファイルでは置き換えられないのか、私は完全に途方に暮れています。
maven - フィルター処理されたファイル内のアセンブリの ID にアクセスするにはどうすればよいですか?
次のような複数のアセンブリがあります。
同様に、ID (この場合は component-000) を含めたいすべてのアセンブリに含まれるファイルがあります。
...
component-id:${id}
...
${assemblyr.id}、${assembly.id} ${id} などを試しましたが、さまざまな失敗がありました。何かご意見は?また、利用可能なプロパティを潜在的にダンプ/印刷する方法を知っている人はいますか?
spring - 単一の jar で複数の spring 依存関係をマージするときに spring.handlers/spring.schemas が上書きされるのを回避するためのアイデア
Unable to locate NamespaceHandler when using context:annotation-configmaven-assembly-plugin によってアセンブルされ、プロジェクトとそのすべての依存関係を含む jar を実行中 (java -jar)にエラーが発生しました。
他の人が forum.springsource.orgスレッド (メッセージ #7/8)META-INF/spring.handlersで正しく発見したように、ファイルが異なる jar に存在するために問題が発生META-INF/spring.schemasし、maven-assembly-plugin が jar を単一のファイルに再パッケージ化すると上書きされます。 .
2 つの spring-*.jar ファイルの内容を見ると、ファイルがクラスパスに対して相対的に同じ位置にあることがわかります。
META-INF フォルダーを特定のパッケージに入れることはできませんか? もしそうなら、私が提案したいアイデアは(それが適用できることを願っています)、それらが参照するパッケージの下にMETA-INF/spring.shemasとファイルを置くことです。META-INF/spring.handlers
この方法では、単一の jar にマージされたときに競合しません。あなたはそれについてどう思いますか?
java - プロパティファイルをMavenアセンブリとマージする
Mavenアセンブリプラグインに問題があります。
いくつかのjarファイルを使用するMavenプロジェクトがあります。各jarには構成ファイルが含まれています。別のプロジェクトでは、Mavenアセンブリプラグインを使用して、すべての構成を一意のjarにアセンブルします。
すべて正常に動作しますが、残念ながら、2つのファイルは同じ名前であり、2番目のファイルが最初のファイルを上書きします。
上書きする代わりに2つのファイルをマージするようにMavenに指示することはできません。
誰かがそれを行う方法を知っていますか?
ありがとう。