servlet 编译问题 我编译出错了找不到程序包 表示看不懂啥意思 程序包该放哪啊 还有web.xml该怎么配置
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了servlet 编译问题 我编译出错了找不到程序包 表示看不懂啥意思 程序包该放哪啊 还有web.xml该怎么配置相关的知识,希望对你有一定的参考价值。
我是小白,不太会,能直接告诉我怎么操作吗,还有我是用文档编辑的 代码在下面package com.servlet;import java.io.IOException;import javax.servlet.ServletConfig;import javax.servlet.ServletException;import javax.servlet.annotation.WebServlet;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import com.entity.Users;/** * Servlet implementation class LoginServlet */@WebServlet("/LoginServlet")public class LoginServlet extends HttpServlet private static final long serialVersionUID = 1L; /** * @see HttpServlet#HttpServlet() */ public LoginServlet() super(); // TODO Auto-generated constructor stub /** * @see Servlet#init(ServletConfig) */ public void init(ServletConfig config) throws ServletException // TODO Auto-generated method stub /** * @see Servlet#destroy() */ public void destroy() // TODO Auto-generated method stub /** * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response) */ protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException // TODO Auto-generated method stub doPost(request, response); /** * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response) */ protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException // TODO Auto-generated method stub request.setCharacterEncoding("UTF-8");//防止中文乱码 Users user = new Users(); String username = request.getParameter("username"); String password = request.getParameter("password"); user.setUsername(username); user.setPassword(password); //把注册成功的用户对象保存在session对象中 request.getSession().setAttribute("loginUser", user); //判断用户名是否合法 if(user.getUsername().equals("admin")&&user.getPassword().equals("admin")) response.sendRedirect(request.getContextPath()+"/login_success2.jsp"); else request.getRequestDispatcher("/login_failure.jsp").forward(request, response);
参考技术A 你是自己用javac命令来编译这个java源文件,你需要通过classpath,来告诉编译器你这个源文件里面引用的类在哪里,就是要去哪里找,这样才不会报找不到。jdk只有javase这部分的,你这个代码还用到javaee,自己的包,这些都是要设置到类路径信息,才不会报错。
直接用个IDE开发环境快点。
编译java文件时提示找不到包
在java源文件中导入类,使用如下代码:
import javax.servlet.*;
import javax.servlet.http.*;
import javax.servlet.jsp.*;
import javax.servlet.jsp.tagext.*;
编译时提示找不到包。
我已经将CLASSPATH中添加了相关的JAR文件:
CLASSPATH=.;C:\Program Files\Java\jdk1.6.0_22\lib\tools.jar;C:\Program Files\Java\jdk1.6.0_22\lib\dt.jar;C:\Program Files\Java\jdk1.6.0_22\lib\jsp-api.jar;C:\Program Files\Java\jdk1.6.0_22\lib\servlet-api.jar;D:\app\product\11.2.0\dbhome_1\jdbc\lib\ojdbc6.jar
通过手工展开jsp-api.jar和servlet-api.jar已经看到相应的目录结构和类,但是在DOS下
编译时就是提示找不到包,晕,急,
解释:通常java文件在进行编写的时候要依赖于其他的包文件,当前类中已经引用了别的包类,但是对应的包类下却找不到相应的类名称,结果就会报此错误。
备注:这个多出现在复制粘贴别人的代码,结果却没有引入需要的包的情况而导致的报错,所以,在java开发过程中一定要弄明白代码的依赖情况,添加必要的jar或者自定义类来支撑程序的运行,否则很可能会报错。 参考技术B C:\Program Files 像这样的路径最好加上引号"C:\Program Files\Java\jdk1.6.0_22\lib\servlet-api.jar" 参考技术C servlet 想要编译通过,需要用j2ee的包,你需要安装j2ee的jdk,从lib中找到j2ee.jar 参考技术D 改Jre
以上是关于servlet 编译问题 我编译出错了找不到程序包 表示看不懂啥意思 程序包该放哪啊 还有web.xml该怎么配置的主要内容,如果未能解决你的问题,请参考以下文章
SpringBoot 项目找不到 javax.servlet.Filter 的问题
maven编译时出现读取XXX时出错invalid LOC header (bad signature)