San*_*ejű 3 java compiler-construction servlets classpath
我想servlet从命令提示符编译一个非常基本的,但它总是不成功,编译器告诉我以下内容:
error: package javax.servlet does not exist.
Run Code Online (Sandbox Code Playgroud)
我搜索了解决方案,我发现我需要将servlet.jar库包含到我的PATH中.我相信我做到了.我坚信我的计算机中这些库的位置是:
C:\apache-tomcat-7.0.23\lib\servlet-api.jar\
Run Code Online (Sandbox Code Playgroud)
我的PATH的结尾(相关部分)如下:
%JAVA_HOME%\bin;C:\apache-tomcat-7.0.23\lib\servlet-api.jar\
Run Code Online (Sandbox Code Playgroud)
对我来说,它看起来不错,但显然不是.谁能告诉我可能是什么问题?
classpath not path ...而且你不需要它作为环境变量.您可以使用选项-cp或-classpath设置javac的类路径(还可以使用其他几种方法).javac使用环境变量CLASSPATH来查找类,这些类可能很有用,也可以成为难以跟踪问题的源.
编译使用库(即标准JavaSE外部的类)的java文件的示例如下:
javac -classpath C:\apache-tomcat-7.0.23\lib\servlet-api.jar MyTestServlet.java
Run Code Online (Sandbox Code Playgroud)
如果您的环境变量CLASSPATH包含您需要的库,您可能希望这样做:
javac -classpath %CLASSPATH%;C:\apache-tomcat-7.0.23\lib\servlet-api.jar MyTestServlet.java
Run Code Online (Sandbox Code Playgroud)
(请注意,我无法访问Windows机器,因此未测试上述语法的特殊部分)(另请注意,在此示例中为"C:\ apache-tomcat-7.0.23\lib"\servlet-api.jar"是一个jar文件,而不是你机器上可能出现的问题的目录.)对于Windows操作系统上的命令行编译,最好正确设置环境变量JAVA_HOME和bin目录PATH中的JDK.
但是我建议在通过/在IDE中进行编写 - 编译 - 执行 - 部署以进行servlet开发,然后再确定如何使用命令行中的JDK来完成它.Java Servlet不是独立的可执行类,但需要部署到例如tomcat中进行测试/使用.
| 归档时间: |
|
| 查看次数: |
46035 次 |
| 最近记录: |