我想在Eclipse中使用servlet进行开发,但它说包javax。Servlet / jakarta。Servlet无法解析。如何添加javax。Servlet / jakarta。servlet包到我的Eclipse项目?
当前回答
您可以简单地复制servlet-api.jar并将jar文件复制到WEB-INF中的lib文件夹中。 然后只需清理并构建项目,您的错误就会得到解决。
**OR**
您可以通过以下步骤直接将jar文件添加到库中。
右键单击项目。 转到属性。 进入Java构建路径。 从选项卡中选择添加库选项。 添加Jar文件 给出servlet-api.jar文件的路径。 清理并构建项目。
其他回答
我在与“动态Web模块”相关的项目创建过程中得到了一个空指针异常。
让项目进行编译(即,到javax。我必须去项目的属性,在侧边栏中选择项目facet,勾选动态Web模块,然后单击应用。
令人惊讶的是,这一次“动态Web模块”facet安装正确,导入开始工作。
从维基百科。
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class HelloWorld extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
PrintWriter out = response.getWriter();
out.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 " +
"Transitional//EN\">\n" +
"<html>\n" +
"<head><title>Hello WWW</title></head>\n" +
"<body>\n" +
"<h1>Hello WWW</h1>\n" +
"</body></html>");
}
}
当然,这只有在将servlet-api.jar添加到Eclipse构建路径时才有效。通常,您的应用服务器(例如Tomcat)将拥有正确的jar文件。
假设有一个简单的动态Web项目。确保Tomcat存在于项目的构建路径中。
首先在您的机器上下载/安装本地tomcat实例。假设我们安装了tomcat v8.5。
现在配置Eclipse全局服务器运行时环境
Windows > Preferences > Server > Runtime Environments > Add > Apache > Apache Tomcat v8.5 > Next > Browse Tomcat Installation directory > Next > Finish.
现在创建动态web项目,我们看到导入javax。Servlet无法解决问题。请按照以下步骤解决此问题。
Right Click On Project > Build Path > Configure Build Path > Libraries > Add Library > Server Runtime > Select your Apache Tomcat instance > Finish > Apply and Close.
所有的错误都会消失。
包括服务器lib文件夹中的servlet-api.jar。
执行这一步
最重要的是,不要手动复制/下载/移动/包含特定于servletcontainer的单个库,比如servlet-api.jar
@BalusC,
我更愿意使用我的应用程序将要使用的确切类,而不是Eclipse提供的类(当我感觉自己像一个偏执的开发人员时)。
另一个解决方案是使用Eclipse“配置构建路径”>库>添加外部jar,并添加任何容器的servlet api。
并且在使用ant构建时遵循@kaustav datta的解决方案-拥有一个类似tomcat的属性。Home或weblogic.home。 然而,它引入了另一个约束,如果使用Weblogic,开发人员必须在他/她的本地机器上安装Weblogic ! 还有其他更清洁的解决方案吗?
推荐文章
- 在流中使用Java 8 foreach循环移动到下一项
- 访问限制:'Application'类型不是API(必需库rt.jar的限制)
- 用Java计算两个日期之间的天数
- 如何配置slf4j-simple
- 在Jar文件中运行类
- 带参数的可运行?
- 我如何得到一个字符串的前n个字符而不检查大小或出界?
- 我可以在Java中设置enum起始值吗?
- Java中的回调函数
- c#和Java中的泛型有什么不同?和模板在c++ ?
- 在Java中,流相对于循环的优势是什么?
- Jersey在未找到InjectionManagerFactory时停止工作
- 在Java流是peek真的只是调试?
- Recyclerview不调用onCreateViewHolder
- 将JSON字符串转换为HashMap