2017-04-30 7 views
0

Mavenを使い始めたばかりですが、プロジェクトの依存関係をビルドライフサイクルのコンパイル段階にダウンロードする方法があるかどうかは疑問でした。もしそうなら、それを行う方法?依存関係をMavenのコンパイル・フェーズにダウンロードする方法を教えてください。

などは、私だけでいいと思う:

mvn clean compile 

とコードがプロジェクトの&すべての依存関係がダウンロードされますコンパイルされます。

+1

実際の問題は何ですか?前回私が 'mvn clean compile'を行ったところ、コードがコンパイルされ、depsがダウンロードされました –

+0

私は上記の方法でプロジェクトをコンパイルしています。" java "でアプリケーションを起動しようとしています。 Mavenの依存関係によって追加されたorg.hibernate.service.ServiceRegistryの "ClassNotFoundException"があります。 –

答えて

2

あなたの目標(当初意図したものではない)に応じて、さまざまなオプションがあります。

あなたは(開発環境からの)場所でアプリケーションを実行する場合は、maven exec pluginを使用して、クラスパスにあなたの依存関係を持つ、あなたのメインクラスを実行するためにMavenを使用することができます。

mvn exec:java -Dexec.mainClass="your.main.Class"

あなたが配布して他の場所で実行することができます何かにアプリケーションをパッケージ化することができるようにしたい場合は、他の選択肢があります。

  • maven assembly plugin、あなたをバンドルしますアーカイブを構築しますあなたのコードとその依存関係と「脂肪ジャー」を構築するための依存関係やランチャースクリプトと一緒にアプリ(あなたが書かなければならないということ)
  • maven shade pluginjava yourfatjar.jar

を持つ実行可能な単一のファイルとして存在しています上記のより多くの選択肢は、主要なもののためのポインタに過ぎません。それぞれには、より包括的なスタックオーバーフロー解答がたくさんあります。

関連する問題