如何从命令提示符编译servlet?

我想从命令提示符编译一个非常基本的servlet ,但它总是不成功,编译器告诉我以下内容:

  error: package javax.servlet does not exist. 

我搜索了解决方案,我发现我需要将servlet.jar库包含到我的PATH中。 我相信我做到了。 我坚信我的计算机中这些库的位置是:

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

我的PATH的结尾(相关部分)如下:

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

对我来说,它看起来不错,但显然不是。 谁能告诉我可能是什么问题?

classpath not path …而且你不需要它作为环境变量。 您可以使用选项-cp或-classpath设置javac的类路径(还可以使用其他几种方法)。 javac使用环境变量CLASSPATH来查找类,这些类可能很有用,也可以成为难以跟踪问题的源。

编译使用库(即标准JavaSE外部的类)的java文件的示例如下:

 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操作系统上的命令行编译,最好正确设置环境变量JAVA_HOME和bin目录PATH中的JDK。

但是,我建议通过/在IDE中编写 – 编译 – 执行 – 部署以进行servlet开发,然后再确定如何使用命令行中的JDK来完成它。 Java Servlet不是独立的可执行类,但需要部署到例如tomcat中进行测试/使用。

首先从以下路径复制servlet-api.jar文件

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

按照路径将其粘贴到java软件的bin文件夹中

C:\java\jdk1.6\bin;

希望你现在可以成功编译你的servlet程序。

1.您可以将javax.servlet.jar复制到jdk1.6 \ lib文件夹中。 2.您可以转到控制面板\系统\高级系统属性\环境变量

在此处输入图像描述

在CLASSPATH变量中输入jar的位置,如下所示:

在此处输入图像描述

然后编译并运行servlet。