我制作了一个工作正常的hello world servlet
@WebServlet("/HelloWorld")
public class HelloWorld extends HttpServlet {
private static final long serialVersionUID = 1L;
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
response.setContentType("text/html");
PrintWriter out = response.getWriter();
out.print("<html><body>");
out.print("<h3>Hello World</h3>");
out.print("</body></html>");
}
}
当我在服务器上运行它(在localhost上的Apache Tocmat 8.0)时,我得到了所需的响应(一个html页面显示&#34; Hello World&#34;)。
这里有什么奇怪的。在我对代码进行更改后
out.print("<html><body>");
out.print("<h3>Not a hello world servlet anymore!</h3>");
out.print("</body></html>");
然后我再次保存并在服务器上运行(重新启动服务器),我没有得到修改后的html页面,仍然得到旧页面(&#34; Hello World&#34;页面)。
通过关闭eclipse并再次启动它可以解决这个问题。在那之后,当我在服务器上运行我的servlet时,我得到了所需的响应(&#34;不再是一个hello world servlet了!&#34;)。
我怎样才能做到这一点,所以我不必重新启动eclipse以使我的更改生效?
答案 0 :(得分:0)
当Eclipse构建项目时,是否会覆盖或将.class文件移动到Web服务器的WEB-INF / classes目录中? 这对于在正在运行的WebApp实例
上实现代码更改是必要的