2010-08-22 81 views
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。* dosenot存在。 2.我无法连接本地主机在铬或浏览器。在tomcat 5.5中设置classpath后的编译问题

尽管服务器实例在运行,但这些错误仍在出现。 到java sdk和tomcat的Classpath是不同的。这是值得关注的问题。 请帮忙。 我已经投入了相当多的时间来找出问题所在。 thanx提前。

回答

1

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

这意味着javac的类路径未被正确指定。它应该如下所示:

javac -cp .;"/path with spaces/to/servlet-api.jar" com/example/YourServlet.class

请注意,您需要用双引号括住空格。

我无法连接本地主机在铬或浏览器。尽管服务器实例正在运行,但这些错误仍在出现。

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

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

%CLASSPATH%环境变量是毫无价值的。使用-cp参数。如果您想避免每次长时间输入/记住,请考虑在命令中使用.bat文件,或者使用像Ant这样的构建工具或Eclipse等IDE。然而,环境变量是重要的。 Tomcat需要知道它才能访问工具集来编译JSP文件。 %JAVA_HOME%应该指向JDK的安装目录。

+0

现在它可以连接到tomcat 5.5,但仍然无法编译我的servlet,每次都有相同的错误报告。 我试图从我的工作java目录以及保持servlet在tomcat 5.5文件夹中的位置进行编译。 和第二件事是tomcat要求我找到jre路径,它位于“c:\ program files \ java \ jre6”。 和在tomcat 5.5配置它说jvm位置为 “C:\ Program Files \ Java \ jre6 \ bin \ client \ jvm.dll” 也请告诉如果tomcat需要jre或jdk – Nitesh 2010-08-24 06:07:18

1

我已经设置类路径为 “C:\程序 文件\ Apache软件基金会 \ tomcat的 5.5 \ common \ lib文件\ servlet的api.jar文件”

如果这意味着CLASSPATH环境变量,你正在学习一个宝贵的教训:它毫无价值。 javac.exejava.exe忽略它;所以所有的Java EE应用服务器都像Tomcat一样;所以像IntelliJ这样的所有IDE。

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

如果您无法使用Chrome或资源管理器连接到本地主机,则可能意味着您没有正确打包或部署应用。确保你创建了一个有效的WAR文件并将它放在Tomcat 5.x/webapps目录中进行部署。

+0

仅当您使用任何'-cp','-classpath'或'-jar'参数时,它才会被忽略。如果你不使用它们中的任何一个,将使用'%CLASSPATH%'。然而,这确实是一个不好的做法。 – BalusC 2010-08-22 18:09:26