2011-12-02 13 views
0

これは私にとっては些細な疑問に思えますが、私は答えを得るのに苦労しました。パッケージ化されたプロジェクトをjarに依存してコンパイルする

私はプロジェクトのルートディレクトリにあるjarファイルに依存するeclipseでプロジェクトを開発しました。私のすべてのファイルはsrcフォルダの "a.b.c"というパッケージに入っています。それは日食でうまく動作します。今私はこのプロジェクトをコマンドラインから実行したいと思っています。

javac -classpath dependency.jar -d ./bin/ ./src/a/b/c/*.java

すべてはクラスファイルにコンパイルし、ビン/ A/B/Cのフォルダに入れている:私は、プロジェクトをコンパイルするには、このコマンドを実行します。それから私は、プロジェクトを実行するために、これらのコマンドを実行します。 ":A/B/C /メインます。java.lang.NoClassDefFoundError" を

cd bin

java -cp ../dependency.jar a.b.c.Main

は、今私が得ます。

したがって、パッケージ内にあり、jarファイルに依存するプロジェクトを実行するにはどうすればよいですか?

答えて

1

だけだけでなく、クラスパスにカレントディレクトリを含める - すなわちjava -cp ../dependency.jar:. a.b.c.Main

+0

thankyouthankyouthankyouthankyou !!!!!! 11 – Robz

1

コンパイル済みのファイルをクラスパスに指定する必要があります。これらのファイルには、a.b.c.Mainが含まれています。 * nixフレーバーマシンでは、cpのパス区切り文字はコロン(:)で、ウィンドウ上ではセミコロン(;)なので、* nixでは実行コマンドはbinディレクトリから実行する必要があります。

java -cp ../dependency.jar:. a.b.c.Main 
関連する問題