我正在学习servlet和jsps,现在我正在尝试生成我的WAR文件.据我所知,我需要创建一个MANIFEST.MF文件才能完成它.我能够使用Intellij IDEA生成WAR文件,但是一旦我将其复制到/ webapps(tomcat home的子目录)并运行Tomcat,我就无法运行该应用程序.我在MANIFEST.MF中收到一条警告,告诉Invalid main class
我声明Main-Class
属性的位置.我这样做:Main-Class: demo.Hello
// Hello.java package demo; @WebServlet(name = "Hello") public class Hello extends HttpServlet { public Hello() { super(); } private static final long serialVersionUID = 1L; protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { PrintWriter out = response.getWriter(); out.println("Hello"); } } // MANIFEST.MF - class path is set to where Hello.java is stored Manifest-Version: 1.0 Class-Path: /home/.../src Main-Class: demo.Hello
你有任何想法如何解决这个问题?
注意:Intellij IDEA直接在localhost:8080上运行Web应用程序,即使我设置了另一个应用程序上下文.我不知道为什么.
对于Web应用程序,无需在Manifest文件中添加Main-Class条目.此条目是为了使您的jar可执行.