导入javax.servlet无法parsing
我正在尝试使用Eclipse的Java EE开发Web应用程序。
我需要使用Tomcat作为我的服务器 。 我已经下载了Tomcat,它正在运行。 但是我的程序不能编译。
我得到以下错误:
导入javax.servlet无法parsing。
我需要做什么?
您需要将Servlet API添加到您的类path中。 在Tomcat 6.0中,这是在Tomcat的lib
文件夹中的一个名为servlet-api.jar
的JAR中。 您可以将对该JAR的引用添加到项目的类path中,也可以将JAR的副本放在Eclipse项目中,然后将其添加到类path中。
如果你想把JAR放在Tomcat的lib
文件夹中:
- 用鼠标右键单击该项目,单击属性 。
- selectJava构buildpath 。
- 点击添加外部JAR …
- 浏览find
servlet-api.jar
并select它。 - 单击确定以更新构buildpath。
或者,如果您将JAR复制到您的项目中:
- 用鼠标右键单击该项目,单击属性 。
- selectJava构buildpath 。
- 点击添加JAR …
- 在你的项目中find
servlet-api.jar
并select它。 - 单击确定以更新构buildpath。
如果尚未完成,则需要将Tomcat集成到Servers视图中。 右键单击那里并select新build>服务器 。 从列表中select适当的Tomcat版本并完成向导。
在创build新的dynamicWeb项目时 ,应该从第一个向导步骤中的列表中select集成的服务器作为目标运行时 。
或者,当您拥有现有的dynamicWeb项目时 ,可以在项目属性中的“ 目标运行时”条目中进行设置/更改。 然后,Eclipse将自动将所有的库添加到构buildpath中(而不需要在项目中复制它们)。
您需要将依赖项的范围设置为POM中的“提供”。
<dependency> <groupId>javax.servlet</groupId> <artifactId>servlet-api</artifactId> <version>2.4</version> <scope>provided</scope> </dependency>
那么一切都会好的。
将servlet-api.jar
添加到您的类path中。 你可以从tomcat的lib文件夹中取出它。
我有同样的问题,因为我的“dynamicWeb项目”没有参考我想要使用的已安装的服务器,因此没有参考服务器提供的Servlet API。
下面的步骤解决了这个问题,但没有在Java Build Path( Eclipse版本:Luna )中添加额外的Servlet-API:
- 右键单击您的“dynamicWeb项目”
- select属性
- 在“Properties”向导左侧的列表中selectProject Facets
- 在向导的右侧,您应该看到一个名为Runtimes的选项卡。 select运行时选项卡并检查要运行servlet 的服务器 。
编辑:如果没有列出的服务器,您可以在运行时选项卡上创build一个新的服务器
添加到pom.xml
<dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>3.1.0</version> </dependency>
如果你得到这个编译错误,这意味着你没有在类path中包含servlet jar。 包含此jar的正确方法是将Server Runtime jar添加到您的eclipse项目中。 你应该按照下面的步骤来解决这个问题:你可以从这里下载servlet-api.jar http://www.java2s.com/Code/Jar/s/Downloadservletapijar.htm
Save it in directory. Right click on project -> go to properties->Buildpath and follow the steps.
在Eclipse中有相同的问题。 出于某种原因,我的构buildpath中没有servlet.jar文件。 我最终做的是从我的另一个项目复制一个“lib”文件夹到我正在处理的项目中,然后手动进入该文件夹,并将servlet.jar文件添加到构buildpath(右键单击时出现选项,点击项目浏览器中的文件)。