2

GlassFish3.1.2Webサーバーは通常のJavaPOJOのJavaSE1.6で正常に動作しています。JAVA_HOME、JAVA_PATH、およびJRE_HOME変数が正しく設定されている。私はLinuxCentOS6.2を使用しており、viとコマンドラインからすべてのJava作業を行っています(たとえば、Spring、Eclipseなどのフレームワークやツールはありません)。

ここでJavaサーブレットを使用したいのですが、次のようなエラーが発生します。

package javax.servlet.http does not exist

環境パスが正しく設定されているため、コンパイル中にサーブレットファイルが表示されると想定しました。どうやらこれはそうではありません。

このエラーを修正する方法を知っている人はいますか?Linuxディレクトリを探し回る場合、サーブレットjarファイルのファイル名を探していますか?JDK 1.6のJAVA_HOMEからこのファイルがどこにあるか知っている人はいますか?

または、サーブレット関連のファイルはjdk 1.6の一部ではなく、個別にダウンロードしてインストールする必要がありますか?

アップデート:

Linuxプロンプトから入力locate servlet-api.jarすると、GlassFishインストールディレクトリ内のパスが返されます(例~/glassfish3/glassfish/modules/javax.servlet-api.jar)。したがって、以下で説明するように、これはGlassFishインストールの一部です。

4

3 に答える 3

4

コンパイル時にクラスパスが必要ですservlet-api。サーバーにある可能性がありますが、実行時に利用できます(コンパイル時ではありません)

于 2012-05-16T17:56:51.043 に答える
4

サーブレット API は Java SE の一部ではなく、Java EE の一部です。JDK にはバンドルされていません。Glassfish インストールで javaee jar ファイルを見つけて、コンパイル クラスパスに配置します。

于 2012-05-16T17:57:45.047 に答える
2

標準 Java SDK の一部ではないため、クラスパスにservlet-api.jarがあることを確認してください。

于 2012-05-16T17:57:42.637 に答える