2017-12-01 8 views
0

私はそれを瓶に変えたいというスタンドアロンのプロジェクトを持っています。ウェブコンテナは関係ありません。私はmavenプロジェクトを作成し、それはいくつかのjarファイルを読み込み、他のjar(Imported Class)に依存するClassを読み込んだときに、インポートされたClassを見つけることができないという例外がスローされます。このクラスは私のpom.xmlに定義されています。だから、私は、実行時に、このjarは私の実行可能クラスにアクセスできないと仮定します。どうすればこれを達成できますか?スタンドアロンアプリの実行時にjarファイルを利用するには?

PS:私はM2_REPOをEclipseのクラスパス変数に設定しています。

ありがとうございました。

+0

私は 'maven'でどのように動作するのか分かりませんが、' NetBeans'を使ってビルドすると、プログラムを実行するために必要なjarを保持する 'lib'フォルダが作成されます。 – Sedrick

答えて

2

あなたがここ2つの迅速なオプションがあります。

1-スタンドアロン瓶のMANIFEST.MFにプロジェクトのClasspathを追加します。

2内部にすべての依存関係とともにコードをパックする "fat jar"を作成します。

両方のオプションを達成するためのMavenプラグインがあります。

+1

+追加オプション:システムCLASSPATH変数またはjavaコマンドラインの依存関係を-cpパラメータとして置きます。 – Vadim

+0

こんにちは、maven-jar-pluginを使用して呼び出し元のjarファイルにクラスパスを入れて解決しました。私はfat jarオプションを使いたくなかった。 – Moon13

+0

また、maven-assembly-pluginを使って配布ジップなどをビルドすることもできます。 –

関連する問題