2

我已经在 windows vista home basic 中安装了 Tomcat 5.5。我已将类路径设置为“C:\program files\apache software foundation\tomcat 5.5\common\lib\servlet-api.jar”。现在有两个问题。1. 我无法编译我的 servlet。它说包 javax.servlet.* 不存在。2.我无法在chrome和资源管理器中连接本地主机。

尽管服务器实例正在运行,但仍会出现这些错误。java sdk 和 tomcat 的类路径是不同的。是否值得关注。请帮忙。我已经投入了大量时间来解决问题。提前谢谢。

4

2 回答 2

1

我已将类路径设置为“C:\program files\apache software foundation\tomcat 5.5\common\lib\servlet-api.jar”

如果这意味着 CLASSPATH 环境变量,那么您正在学习宝贵的一课:它毫无价值。 javac.exejava.exe忽略它;所有 Java EE 应用服务器(如 Tomcat)也是如此;IntelliJ 等所有 IDE 也是如此。

javac.exe -cp每次在命令 shell 中编译时,您都必须将 servlet-api.jar 添加到 CLASSPATH ,或者将其添加到 IDE 项目 CLASSPATH,或者在 Ant 中进行设置。

如果您无法使用 Chrome 或 Explorer 连接到 localhost,这可能意味着您没有正确打包或部署您的应用程序。确保创建一个有效的 WAR 文件并将其放在 Tomcat 5.x /webapps 目录中以进行部署。

于 2010-08-22T18:05:20.637 回答
1

我无法编译我的 servlet。它说包 javax.servlet.* 不存在。

这意味着javac没有正确指定类路径。它应该是这样的:

javac -cp .;"/带空格的路径/to/servlet-api.jar" com/example/YourServlet.class

请注意,您需要用双引号将带有空格的路径括起来。

我无法在 chrome 和资源管理器中连接本地主机。尽管服务器实例正在运行,但仍会出现这些错误。

然后您使用了错误的域/端口。在本地机器上运行 Tomcat 时,域至少应该是localhost. 实际端口可以在Tomcat/conf/server.xml文件中确定。它默认为8080,但可以在 Windows 安装向导中更改。最终 URL 应类似于http://localhost:8080。如果您使用80默认 HTTP 端口的端口,则:80可以从 URL 中省略该部分。

java sdk 和 tomcat 的类路径是不同的。

%CLASSPATH%环境变量毫无价值。使用-cp论据。如果您想避免每次都长时间输入/记住,请考虑使用.bat带有命令的文件,或者像 Ant 这样的构建工具,或者像 Eclipse 这样的 IDE。

然而,%JAVA_HOME%环境变量很重要。Tomcat 需要知道它才能访问工具集来编译 JSP 文件。%JAVA_HOME%应该指向JDK的安装目录。

于 2010-08-22T18:08:56.113 回答