2012-01-06 14 views
1

com.das.dbmoduleパッケージにいくつかのJavaファイルが含まれています。これらのJavaファイルをnetbeansまたはeclipseを使って実行すると、うまく動作します。しかし、私はコマンドプロンプトを使用してそれらを実行しようとするといくつかのエラーが発生します。私はデフォルトのパッケージを使用してみましたが、同じ問題です。私はすべてのJavaファイルをjdk binフォルダに入れました。私はmysqlデータベースとmysqlコネクタjarファイルを使用しています。 私は基本的に私はすべて5分後に私のサーバーを更新するバッチファイルを作成しようとしていますコマンドプロンプトからjavaファイルを実行するとエラーが発生する

C:\Program Files\Java\jdk1.6.0\bin>cd.. 

C:\Program Files\Java\jdk1.6.0>cd.. 

C:\Program Files\Java>cd program files 
The system cannot find the path specified. 

C:\Program Files\Java>cd java 
The system cannot find the path specified. 

C:\Program Files\Java>cd jdk1.6.0 

C:\Program Files\Java\jdk1.6.0>cd bin 

C:\Program Files\Java\jdk1.6.0\bin>javac fileoperation.java 
fileoperation.java:47: cannot find symbol 
symbol : class Dbconnection 
location: class fileoperation 
     Dbconnection dbconnection = new Dbconnection(); 
     ^
fileoperation.java:47: cannot find symbol 
symbol : class Dbconnection 
location: class fileoperation 
     Dbconnection dbconnection = new Dbconnection(); 
             ^
fileoperation.java:48: cannot find symbol 
symbol : class Filefinder1 
location: class fileoperation 
     Filefinder1 f    = new Filefinder1(); // call constructor 
     ^
fileoperation.java:48: cannot find symbol 
symbol : class Filefinder1 
location: class fileoperation 
     Filefinder1 f    = new Filefinder1(); // call constructor 
             ^
4 errors 

C:\Program Files\Java\jdk1.6.0\bin>java fileoperation 
Exception in thread "main" java.lang.NoClassDefFoundError: fileoperation 

C:\Program Files\Java\jdk1.6.0\bin>Pause 
Press any key to continue . . . 

のようなエラーが発生します。私はウェブアプリを開発している学生です。私を案内してください。私は明後日のプロジェクトデモをしています。

答えて

0

最も可能性の高い"引用符を処理するために、Windowsのcmd.exeシェルを強制

C:\Program Files\Java>cd "program files" 

でなければなりません

C:\Program Files\Java>cd program files 

で特に、いくつかのバッチファイルを台無しにされたように思われます単一引用符で囲まれた句。引用符がなければ、それはという名前のディレクトリにcdしようとしています。第2引数は未知でfilesです。引用符で、それはprogram filesという名前のディレクトリを探しています。

+0

あなたのお役に立てる皆さん。しかしもう少し詳しく説明してください。私は問題がどのようになっているのか、私が学生なので解決する方法を教えてくれません....助けてください – adesh

+0

私はC:\ Program Files \ Java \ jdk1.6.0 \ binにmysqlコネクタを置きました。 binフォルダにはまだ私はsomエラーを与える。私は私のクラスパスをC:\ Program Files \ Java \ jdk1.6.0 \ binに設定しました。誰も助けてください – adesh

+0

java.lang.ClassNotFoundExceptionのようなエラーが発生しています:com.mysql.jdbc.Driver at java.net.URLClassLoader $ 1.run(URLClassLoader.java:200) java.security.AccessController.doPrivileged(ネイティブメソッド) java.net.URLClassLoader.findClass(URLClassLoader.java:188) at java.lang.ClassLoader.loadClass(ClassLoader .java:306) at sun.misc.Launcher $ AppClassLoader.loadClass(Launcher.java:276) at java.lang.ClassLoader.loadClass(ClassLoader.java:251) at java.lang.ClassLoader.loadClassInternal(ClassLoader .java:319) – adesh

0

環境変数PathC:\Program Files\Java\jdk1.6.0\binの値に設定する必要があります。 Pathを設定すると、任意のフォルダ内からjavaプログラムをコンパイルして起動することができます。エラーメッセージには、コンパイル中に一部のクラスが解決されない/見つからないことが記載されています。 classpathスイッチにjavac.exejava.exeを使用して、これらのクラスの場所を指定します。

2

javaおよびjavacコマンドのマニュアルエントリ、および/またはJavaプログラムのコンパイルおよび実行方法に関するチュートリアルを読む必要があります。コンパイルエラーは、コンパイル時にクラスパス上にMySQL Connector JARファイルがないことが原因です。マニュアルエントリに記述されているように、 "-cp"オプションを使用してください。

Javaインストールディレクトリに "cd"する必要はありません。ちょうどその時あなたは、単にjavajavacとしてコマンドを実行することができ、

"C:\Program Files\Java\jdk1.6.0\bin" 

は、バッチファイルの%PATH%環境の構成要素であることを確認してください。


を「すべての5分後に私のサーバーを更新」するためのスクリプトがJavaコードをコンパイルする必要がある場合、なぜ私も困惑しています。

+0

私のJavaファイルはfileoperation.java Filefinder1.java dbconnection.javaです。OnlyExt.java NewClass.java – adesh

+0

私はmysqlコネクタ – adesh

+0

に自分のクラスパスを設定している可能性がありますあなたのビルドディレクトリの構造が間違っている...または 'javac'を実行するときに間違ったディレクトリにあります。 –

1

あなたは2つの問題を抱えていたように見えます:

  1. あなたのJAVA_HOME環境変数を設定し、スクリプトの中でそれを使用する必要があります:http://confluence.atlassian.com/display/DOC/Setting+the+JAVA_HOME+Variable+in+Windows

  2. を使用すると、クラスパスがどのように働くかを理解していないように見えますJavaで。コンパイル時にすべてのクラスがどこにあるかをJavaコンパイラに指示する必要があります。コンパイルすると、依存関係や参照を解決できます。

http://docs.oracle.com/javase/1.3/docs/tooldocs/win32/javac.html

あなたができる最善のことは、ソースコードの実行可能なjarファイルを生成して、バッチスクリプトからそれを呼び出すためのAntのようなビルドツールを使用しています。

関連する問題