2012-04-28 2 views
2

私は、コマンドプロンプトから、非常に基本的なservletをコンパイルしたいのですが、それは常に失敗し、コンパイラは私に次のように伝えます:コマンドプロンプトからサーブレットをコンパイルする方法は?

error: package javax.servlet does not exist. 

私は解決策をグーグルと私は含める必要があることを発見私のPATHにはservlet.jarのライブラリがあります。 私は信じています。 私は強く私のコンピュータでは、これらのライブラリの場所があることを信じている。私にとって

%JAVA_HOME%\bin;C:\apache-tomcat-7.0.23\lib\servlet-api.jar\ 

、それはOKになります。

C:\apache-tomcat-7.0.23\lib\servlet-api.jar\ 

と私のPATHの終わり(関連部分)以下でありますしかし、明らかにそうではありません。誰が問題になるのか教えていただけますか?

+0

なぜtomcatを使用しないのですか? – Ketan

+1

パスとクラスパスは異なるものです。 –

答えて

8

クラスパスではありません...あなたは環境変数としてそれを必要としません。 オプション-cpまたは-classpathを使用してjavacのクラスパスを設定できます(他にもいくつかの方法があります)。 javacは環境変数CLASSPATHを使用してクラスを検索します。これは便利であり、追跡が難しい問題の原因ともなります。

ライブラリを使用するJavaファイルをコンパイルする例が(つまり、標準のJava SEの外部からのクラスである)のようになります。

javac -classpath C:\apache-tomcat-7.0.23\lib\servlet-api.jar MyTestServlet.java 

お使いの環境変数CLASSPATHはあなたがやりたいかもしれません必要なライブラリが含まれている場合:

javac -classpath %CLASSPATH%;C:\apache-tomcat-7.0.23\lib\servlet-api.jar MyTestServlet.java 

(私はWindowsマシンへのアクセスを持っていないことに注意して、そのため上記の構文の特異な部分をテストしていないしてください) (また、この例では「C注意:\ Apacheを-tomcat-7.0.23 \ lib \ servlet-api.jar "は次のとおりです。 jarファイルであり、あなたのマシン上のあなたの質問に由来するディレクトリではない) Windows OSでのコマンドラインコンパイルでは、環境変数JAVA_HOMEを正しく設定し、JDKのbinディレクトリをPATHに設定することをお勧めします。

しかし、私はコマンドラインからJDKだけでそれを行う方法を理解する前に、サーブレット開発のIDEで/を使ってwrite-compile-execute-deployを行うことをお勧めします。 Javaサーブレットはスタンドアロンの実行可能クラスではありませんが、たとえばテスト/使用するためにはtomcatなどにデプロイする必要があります。

+0

CLASSPATH環境変数を避けるために+1してください。予期しない動作につながる可能性があります。ただし、完全性のために例を含めることをお勧めします。 –

+0

例に同意しますが、私は10年ほどでjavaのWindowsパスを見たことがありません。私は更新しようとします。 – esej

+0

しかし、それはクラスパスの例です。唯一の違いは、セパレータ、Windowsでは ';'、実際のOSでは ':'です。 D \\ –

1

まずコピーパス

C:\apache-tomcat-7.0.23\lib\servlet-api.jar;

を次、今のパス

C:\java\jdk1.6\bin;

希望に従うことによって、Javaソフトウェアのbinフォルダに貼り付けからのservlet-api.jarのファイルサーブレット・プログラムを正常にコンパイルできます。

1

1. javax.servlet.jarをjdk1.6 \ libフォルダにコピーできます。 2。あなたは次のように

enter image description here

コントロールパネル\システム\高度なシステムのプロパティ\環境変数にはCLASSPATH変数にjarファイルの場所を入力して行くことができます。そして、

enter image description here

コンパイルして実行サーブレット。

関連する問題