You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将Maven构建的Spring Boot项目部署到XAMPP htdocs并正常运行?

解决Spring Boot项目放入XAMPP htdocs无法正常访问的问题

问题根源

你直接把Spring Boot的源码文件夹丢进了XAMPP的htdocs目录——这是错误的用法:htdocs是Apache HTTP Server存放静态文件、PHP项目的目录,而Spring Boot是Java Web项目,需要打包后部署到Servlet容器(如Tomcat),或者直接运行自带的嵌入式Tomcat。


方法一:打包成Jar包直接运行(无需依赖XAMPP的Tomcat)

这是最简单的方式,Spring Boot自带嵌入式Tomcat,无需额外配置XAMPP的容器:

  1. 找到项目根目录(存在pom.xml的文件夹),打开命令行执行:
    mvn clean package -DskipTests
    
    执行完成后,项目的target目录会生成一个类似myproject-0.0.1-SNAPSHOT.jar的可执行Jar包。
  2. 将这个Jar包复制到任意目录(不一定非要htdocs),比如C:\xampp\htdocs\。
  3. 打开命令行进入Jar包所在目录,执行启动命令:
    java -jar myproject-0.0.1-SNAPSHOT.jar
    
  4. 启动完成后,浏览器访问localhost:8080(如果项目配置了自定义端口,替换为对应端口)即可正常访问。

方法二:打包成War包部署到XAMPP的Tomcat

如果一定要用XAMPP内置的Tomcat,先确保安装XAMPP时勾选了Tomcat组件,再按以下步骤操作:

  1. 修改项目配置
    • 打开pom.xml,将打包方式改为war:
      <packaging>war</packaging>
      
    • 排除Spring Boot自带的Tomcat依赖,避免与XAMPP的Tomcat冲突:
      <dependency>
          <groupId>org.springframework.boot</groupId>
          <artifactId>spring-boot-starter-web</artifactId>
          <exclusions>
              <exclusion>
                  <groupId>org.springframework.boot</groupId>
                  <artifactId>spring-boot-starter-tomcat</artifactId>
              </exclusion>
          </exclusions>
      </dependency>
      <!-- 添加Servlet API依赖,仅编译时使用 -->
      <dependency>
          <groupId>javax.servlet</groupId>
          <artifactId>javax.servlet-api</artifactId>
          <version>4.0.1</version>
          <scope>provided</scope>
      </dependency>
      
    • 修改项目启动类,继承SpringBootServletInitializer并重写configure方法:
      @SpringBootApplication
      public class MyProjectApplication extends SpringBootServletInitializer {
          @Override
          protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
              return application.sources(MyProjectApplication.class);
          }
          public static void main(String[] args) {
              SpringApplication.run(MyProjectApplication.class, args);
          }
      }
      
  2. 打包War包
    在项目根目录执行命令:
    mvn clean package -DskipTests
    
    生成的War包同样在target目录下。
  3. 部署到XAMPP的Tomcat
    • 找到XAMPP的Tomcat的webapps目录,路径一般为C:\xampp\tomcat\webapps。
    • 将War包复制到该目录,Tomcat启动时会自动解压部署。
  4. 启动并访问
    在XAMPP控制面板启动Tomcat服务,浏览器访问localhost:8080/你的War包名称(比如War包名为myproject.war,则访问localhost:8080/myproject)。

额外注意事项

  • 数据库配置检查:确保项目的application.properties或application.yml中,数据库连接信息与当前电脑XAMPP的MySQL配置一致,示例配置:
    spring.datasource.url=jdbc:mysql://localhost:3306/你的数据库名?useSSL=false&serverTimezone=UTC
    spring.datasource.username=root
    spring.datasource.password=你的MySQL密码
    
  • 端口冲突处理:如果想让Spring Boot使用80端口(直接访问localhost),需要在配置文件中设置server.port=80,同时确保XAMPP的Apache服务未占用80端口(可先停止Apache)。

内容的提问来源于stack exchange,提问作者Michael Nunziata

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.22 04:37:33