我的文件夹布局是:
/web-inf/web.xml /网络信息/类/
你好世界.java:
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class HelloWorld extends HttpServlet{
public void doGet(HttpServletRequest request,
HttpServletResponse response)
throws ServletException,IOException{
response.setContentType("text/html");
PrintWriter pw = response.getWriter();
pw.println("<html>");
pw.println("<head><title>Hello World</title></title>");
pw.println("<body>");
pw.println("<h1>Hello World</h1>");
pw.println("</body></html>");
}
}
Run Code Online (Sandbox Code Playgroud)
我想做以下事情:
我应该把我的HelloWorld.java文件放在哪里,以及如何使用命令行编译它?我相信的输出HelloWorld.java那张在/classes/文件夹中。
那么如何生成.war文件呢?
我试着像这样手动编译:
javac HelloWorld.java
我遇到了与导入相关的错误,即在我的路径中找不到库。是否有我必须下载的 Java EE 库并将其添加到我的路径中?
您的代码依赖于不在核心 Java 库中的 servlet API。您需要将其添加到类路径中:
javac -classpath $TOMCAT_HOME/lib/servlet-api.jar yourpackage/HelloWorld.java
Run Code Online (Sandbox Code Playgroud)
WAR 与 JAR 共享相同的文件格式(带有 UTF-8 文件名的 ZIP)。通常,您可以使用 ZIP 实用程序来处理它们。
WAR 结构可能如下所示:
index.html
foo.jsp
WEB-INF/classes/yourpackage/HelloWorld.class
WEB-INF/web.xml
Run Code Online (Sandbox Code Playgroud)
以上假设您package yourpackage;的 .java 文件中有一个声明。应避免使用默认包。
| 归档时间: |
|
| 查看次数: |
5883 次 |
| 最近记录: |