問題タブ [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.
java - maven-jar-plugin で manifest.mainClass を検証する
mainClass
指定されたmaven-jar-plugin
が有効なクラスであることを (別のプラグインを使用しても) 検証する方法はありpublic static void main(String[] argv)
ますか?
verify
これはリファクタリング後に見落とされることがよくあることであり、これを避けてライフサイクルの段階で確認したいと考えています。
maven - Bamboo 展開用の正確で完全なマニフェスト ファイルを持つ追加の jar を生成する方法は?
基本的に、デフォルトのjarファイルに加えて、という名前のjarファイルを生成したい<project.name>.jar
(私の場合は<project.name> + <project.version>.jar
. 注意 : これ<project.name>.jar
はデフォルトの jar と同じですが、名前は同じです。
そして、この追加のjarには、デフォルトで生成されたjarのマニフェストファイルである以下のようなマニフェストファイルが必要です
次のようにブロックを追加しています
しかし、私の場合、追加のjarで生成されたマニフェストファイルには、次のinpartフィールドがありません:
そのため、展開できませんでした。要件が奇妙に聞こえることは知っていますが、問題は明らかです。デプロイ用の正しく完全なマニフェストファイルを持つjarをmavenに生成させる方法は?
//完全なプラグイン部分
maven - ビルドの最後に Maven のターゲット ディレクトリから特定のディレクトリを削除するにはどうすればよいですか?
pom.xml に記載されているすべての jar を解凍し、解凍したコンテンツを 1 つの jar にまとめるタスクがあります。依存関係プラグインと jar プラグインの unpack-dependency ゴールを使用してこれを行うことができます。ただし、新しいjarを生成した後、解凍後に作成されたフォルダーを削除したい。pom.xml で次のコード スニペットを使用しています (各プラグインの上のコメントをお読みください)。
クリーン プラグインは、基本的にデフォルトでターゲット ディレクトリを削除します。ビルドの最後にターゲットディレクトリから「alternateLocation」フォルダーを削除するにはどうすればよいですか。(maven-antrun-plugin を使用して実行できると思いますが、このプラグインは使用したくありません。)
eclipse - MavenArchiver.getManifest() の m2e エラー
STS にエラーが表示され、デバッグ方法がわかりません。周りを検索すると、エラーへの漠然とした参照しか表示されず、解決策はありません。
エラーは次のとおりです。
org.apache.maven.archiver.MavenArchiver.getManifest(org.apache.maven.project.MavenProject, org.apache.maven.archiver.MavenArchiveConfiguration)
pom.xml
/<maven projectName>
行 1 Maven 構成の問題
質問: 問題をさらにデバッグするために問題に関する詳細情報を取得する方法や、考えられる解決策について誰か提案をいただけますか?
メソッドの機能が何であるかについてのもう少しの文脈かもしれません。メソッドに関連付けられている javadocMavenArchiver.getManifest()
はあまり詳細ではなく、スタック トレースも表示されません。ローカルの m2 リポジトリをクリアするなど、プロジェクトと関連プロジェクトのいくつかの更新と更新を試みました。
STS 情報:
- バージョン: 3.7.3.RELEASE
- ビルド ID: 201602250940
- プラットフォーム: Eclipse Mars.2 (4.5.2)
m2e 情報:
- バージョン: 1.6.2.20150902-0002
java - コマンドラインを使用して、Nexus から依存関係のある Maven アーティファクトをダウンロードする
以下のコマンドを使用して、コマンド ラインから Nexus から Maven jar をダウンロードしています。
しかし、私が得るのは依存関係のないjarです。Maven には、名前の依存関係を持つ jar が既に存在します。update-service-1.0.4-jar-with-dependencies.jar
私は次のことを試しました:
ただし、次のエラーが返されます。
質問: 依存関係のある jar をダウンロードする正しい方法は何ですか?
java - Maven プロジェクトのパッケージ化は戦争ですが、jar のビルド/インストールでもあります
Maven 3.3 プロジェクトがあり、主な出力は war ファイルです。
私はmavenプラグインを使用して、jarファイルも作成していますtarget/pro-1.0-SNAPSHOT.jar
。これは機能します。
この jar をローカルの Maven リポジトリにインストールしたいので、maven install プラグインを使用してこれを行います。
jar のインストール手順で jar ではなく war がインストールされることを除いて、ビルド全体が正常に機能します。これをオーバーライドするにはどうすればよいですか?
私が使用できるものを確認するためにここを見ています: http://maven.apache.org/plugins/maven-install-plugin/examples/installing-secondary-artifacts.html
ここに私のビルドからのログがあります:
**
jar のビルド: /Users/mike/code/workspace/pro/target/pro-1.0-SNAPSHOT.jar
[INFO] --- maven-install-plugin:2.5.2:install (do-jar-install) @ pro
[情報] /Users/mike/code/workspace/pro/target/pro-1.0-SNAPSHOT.jar を /Users/mike/.m2/repository/net/mikeski/pro/1.0-SNAPSHOT/pro-1.0-SNAPSHOT にインストールします。戦争
最後の行に注意してください - それは瓶を拾っていますが、戦争をインストールしています
どうすれば修正できますか?
要求に応じて、jar プラグイン構成は次のとおりです。
プロジェクト内のファイルの jar が作成されますが、これは正しい jar です。レポにインストールされている戦争をjarにコピーすると(拡張子を変更するだけです)、他のプロジェクトはそれを問題なく取得できます。
java - Java/Maven - メイン クラスが見つからないか、読み込めませんでした
この問題に関する他のスタックオーバーフローの質問を確認しましたが、これらの質問と回答は、pom.xml の不適切なメイン クラス設定に関連しています。正しいパッケージ名と適切な大文字と小文字の区別を持つようにメイン クラスを作成しましたが、jar を実行するたびにCould not find or load main class
.
プロジェクトを github: https://github.com/quicksilversly/mazeに追加しました。Maven jar プラグインの構成は次のようになります。
そして、ここに私のメインクラスがあります:
これは私が実行したときに得られるものですjava tvf target/jar-to-run.jar
:
したがって、私のメインクラスは期待どおりです。
jar ファイルを実行するには、何を変更する必要がありますか?
java - Maven: JAR の META-INF にファイルを含める
Maven を使用して Java プロジェクトをビルドしています。2 つのファイルがCHANGELOG
あり、JAR ファイル内のディレクトリLICENSE
にコピーしたいと考えています。META-INF
これまでのところ、私が取り組んでいるのは次のとおりです。
classes/META-INF
ただし、コンパイル時にこれら2つのファイルもディレクトリにコピーします。
したがって、ファイルを JAR ファイルに含めたいのですが、それ以外には含めません。これを行う方法はありますか?