2011-02-10 10 views
1

実行します。私はそれで何が間違って思ったんだけどコンパイルして、この.batファイルを指定されたJavaファイルバッチファイルの問題

@ECHO OFF 

echo === Compiling and executing bat file === 


md C:\my_project\dir_prog\class_files 


copy ProgAudioJ.java C:\my_project\dir_prog 


javac -d C:\my_project\dir_prog\class_files ProgAudioJ.java 


java -classpath C:\my_project dir_prog.class_files.ProgAudioJ 

を。

これは機能しません。

私はあなたの助けMAX

+2

batファイルの出力はありますか? ProgAudioJ.javaのソースコードを投稿できますか? –

+3

問題が発生した場合は、「ちょうどうまくいきません」で止めないでください。それが何を出力するか、エラーメッセージとは何か、何が起こるか、実際に何が起こっているかなどを教えてください。これはあなたが経験しているあらゆるタイプのコンピュータ問題に適用されます。 –

答えて

1

ため

おかげで...それはclass_filesというディレクトリにクラスファイルを置きます(そうコンパイル処理がOKである)が、プログラムが実行されません。あなたが持っている意味あなたのプロジェクト内でメインクラスを定義しましたか?

このクラスのpublic static void main(String [] args)メソッド?覚えておいて、その方法は、シェルからのものを実行しているときに呼び出さ を取得します...

EDIT:あなたはこの包括的な概観便利を見つけるかもしれない:Running a Java Program from Command Prompt @ SkylightPublishing.com

HTH

1

私は最初の問題は、あなたが指定する必要があるということだと思いますクラスパスのclass_filesディレクトリ

2番目の問題は、実行するクラスの完全修飾名を指定する必要があることです。これは、Javaソースファイルで定義したパッケージによって異なります。

だから、このようなものが動作するはずです:(私はつまり何のパッケージ、クラスがデフォルトのパッケージであると仮定していないよ)

java -classpath c:\my_project\dir_prog\class_files ProgAudioJ 

あなたは、ソースファイルの内容を提供することはできますか?

+0

ご返信ありがとうございます。私はあなたの提案に従おうとしましたが、残念ながらそれは動作しません。私はソースファイルにパッケージを指定しませんでした。やりましょうか ? – MAX

+0

上記のコマンドは、batファイルまたはコマンドラインから実行していますか?あなたは両方を試すことができますか? ProgAudioJ.javaのソースコードを投稿できますか?出力は何ですか? –

+0

出力はwavファイルプレーヤーとレコーダーとジョイナーです。コマンドラインから実行した場合、このエラーが発生します:スレッド "main"の例外java.lang.NoClassDefFoundError:ProgAudioJ/jav 原因:java.lang。 ClassNotFoundException:ProgAudioJ.java at java.net.URLClassLoader $ 1.run(Unknown Source) プログラムは終了します。 – MAX

0

あなたのコードとコマンドが正しい場合は、javacの非同期実行またはファイルシステムに関連する遅延が疑われます。

pauseコマンドを追加して、問題がコマンドの実行の迅速性であるかどうか、または問題がコマンド内にあるかどうかを確認してください。

関連する問題