要使myeclipse正确编译、部署并运行jsp和servlet,必须确保jdk(推荐8u291或11)、tomcat 9.x(需解压至纯英文路径)与myeclipse三者版本兼容且环境变量(java_home、path)配置准确,再在myeclipse中正确定义tomcat服务器及关联jdk,最后创建动态web项目并成功访问jsp与servlet。

要让MyEclipse能正确编译、部署并运行JSP页面和Servlet类,必须确保JDK、Tomcat、MyEclipse三者版本兼容且路径配置无误,缺一不可;其中JDK版本过高会导致Tomcat 8/9启动失败,Tomcat目录含中文或空格会直接报“Server runtime not found”错误。
安装并验证JDK基础环境
从Oracle或OpenJDK官网下载JDK 8u291或JDK 11(【Tomcat 9仅支持JDK 11及以下】),安装后在命令行执行java -version确认输出为1.8.x或11.x;若显示“不是内部或外部命令”,说明PATH未生效,需手动将%JAVA_HOME%\bin追加进系统PATH变量。
右键“此电脑”→“属性”→“高级系统设置”→“环境变量”,新建系统变量JAVA_HOME,值设为JDK安装根目录(如C:\Program Files\Java\jdk-11.0.15),注意路径中不能有中文或空格。
解压并独立运行Tomcat
前往tomcat.apache.org下载Tomcat 9.x zip版(非exe),解压到纯英文路径下,例如D:\tomcat9;【严禁解压到“下载”“桌面”或含中文的路径】。
双击D:\tomcat9\bin\startup.bat,等待控制台出现Server startup in [xxx] ms字样,此时打开浏览器访问http://localhost:8080,看到Apache Tomcat欢迎页即表示Tomcat本身可独立运行。
若窗口闪退或提示“找不到或无法加载主类”,大概率是JAVA_HOME指向错误或JDK版本不兼容——请立即回退至上一步检查JDK版本与Tomcat匹配性。
在MyEclipse中关联Tomcat服务器
启动MyEclipse → 点击菜单栏Window → Preferences → 展开MyEclipse → Servers → Tomcat → 勾选Enable Tomcat 9.x → 点击Browse…选择D:\tomcat9文件夹 → 在JDK下拉框中选择已配置好的JDK(若未出现,请先点击Add…添加)。
关键验证点:点击Apply and Close后,展开左侧Servers视图,右键Tomcat 9.x Server → Start,控制台应输出正常启动日志;若弹出“Failed to start server”,说明Tomcat路径或JDK引用存在硬性错误,必须重新核对。
创建动态Web项目并部署JSP
菜单栏File → New → Web Project → 输入项目名(如HelloJSP)→ Target runtime下拉框中必须显示已配置的Tomcat v9.0 → 勾选Generate web.xml deployment descriptor → Finish。
项目创建后,在WebRoot目录右键 → New → File → 命名为index.jsp,输入以下内容:
将一个或多个视频上传至YouTube。当用户想“上传到YouTube”“发YouTube”“批量上传”“upload to YouTube”“post videos to YouTube”或发布到YouTube时使用此技能。
<h1>Hello from JSP!</h1>
右键项目 → Run As → Run on Server → 选择Tomcat v9.0 Server → Finish。浏览器自动打开http://localhost:8080/HelloJSP/index.jsp,显示带时间戳的页面即表示JSP解析成功。
添加Servlet类并验证请求处理
方法一:向src目录添加标准Servlet类
右键src → New → Servlet → 类名填HelloServlet → 包名填demo → Next → 勾选doGet和doPost → Finish。MyEclipse会自动生成带@WebServlet("/hello")注解的类。
在doGet方法内添加:response.getWriter().println("Servlet says: Hello World!"); → 保存。
方法二:手动配置web.xml(兼容老式写法)
打开WebRoot/WEB-INF/web.xml,在<web-app></web-app>内插入:
<servlet><servlet-name>HelloServlet</servlet-name><servlet-class>demo.HelloServlet</servlet-class></servlet><servlet-mapping><servlet-name>HelloServlet</servlet-name><url-pattern>/hello</url-pattern></servlet-mapping>
刷新浏览器访问http://localhost:8080/HelloJSP/hello,页面输出“Servlet says: Hello World!”即表示Servlet容器调用链完整打通。










