如何在Windows/Linux系统Shell中运行非Maven版Spring Web应用?
解决无Maven Spring Web项目关闭Eclipse后Tomcat 404问题的Shell启动方法
首先得搞明白问题根源:当你在Eclipse里用「Run on Server」运行项目时,Eclipse其实是把项目的编译文件部署到了它单独管理的Tomcat工作目录,而不是XAMPP自带的Tomcat的webapps文件夹。所以关掉Eclipse后,XAMPP的Tomcat里根本没有你的项目,自然就返回404了。要在Shell里正常启动应用,咱们得手动把项目部署到XAMPP的Tomcat中,再启动服务。
Windows系统Shell操作步骤
导出可部署的WAR包(或复制项目文件)
- 在Eclipse里右键你的Spring项目 → 选择
Export→ 找到Web分类下的WAR file,点击下一步。 - 选好导出路径(比如桌面),给WAR包起个名字(比如
my-spring-web.war),点击Finish即可。 - 嫌导出WAR麻烦的话,也可以直接复制Eclipse项目里
WebContent目录下的所有文件,粘贴到XAMPP Tomcat的webapps文件夹里(默认路径一般是C:\xampp\tomcat\webapps),然后给这个新建的文件夹起个项目名(比如my-spring-web)。
- 在Eclipse里右键你的Spring项目 → 选择
启动XAMPP的Tomcat并验证
- 打开Windows的命令提示符(CMD或PowerShell),切换到XAMPP Tomcat的
bin目录:cd C:\xampp\tomcat\bin - 启动Tomcat服务:
startup.bat - 等Tomcat启动完成后,在浏览器里访问
http://localhost:8080/my-spring-web(这里的my-spring-web是你的WAR包名或者webapps下的项目文件夹名),应该就能正常打开应用了。
- 打开Windows的命令提示符(CMD或PowerShell),切换到XAMPP Tomcat的
停止Tomcat(可选)
如果要停止服务,在同一个Shell窗口输入:shutdown.bat
Linux系统Shell操作步骤
导出WAR包或复制项目文件
- 和Windows一样,先在Eclipse里导出WAR包,然后通过FTP、SCP或者U盘把WAR包传到Linux服务器上。
- 或者直接把Eclipse项目
WebContent目录的所有文件复制到Linux的XAMPP Tomcat的webapps目录(默认路径一般是/opt/lampp/tomcat/webapps),创建一个以项目名命名的文件夹(比如my-spring-web)并粘贴文件。
赋予权限并启动Tomcat
- 打开终端,切换到XAMPP Tomcat的
bin目录:cd /opt/lampp/tomcat/bin - 先确保启动脚本有执行权限(如果没有的话):
chmod +x startup.sh shutdown.sh - 启动Tomcat:
./startup.sh - 启动完成后,访问
http://<你的服务器IP>:8080/my-spring-web就能验证应用是否正常运行了。
- 打开终端,切换到XAMPP Tomcat的
停止Tomcat(可选)
要停止服务的话,输入:./shutdown.sh
额外小贴士
- 检查端口占用:如果8080端口被其他程序占了,得修改Tomcat的
conf/server.xml文件里的Connector端口(比如改成8081),然后重启Tomcat。 - 查看日志排查问题:要是还是出现错误,可以去Tomcat的
logs目录下看catalina.out或者localhost.log文件,里面会有具体的错误信息帮你定位问题。
内容的提问来源于stack exchange,提问作者Sandeep
相关产品推荐
相关产品推荐

