命令行中使用 Maven 启动 Spring Boot 应用

要在命令行中使用 Maven 启动 Spring Boot 应用,主要有以下三种方式:

1. 使用 Spring Boot Maven 插件(最常用)

在项目根目录执行:

复制代码
复制代码
复制代码
# 基本启动
mvn spring-boot:run

# 指定运行环境(profile)
mvn spring-boot:run -Dspring-boot.run.profiles=dev

# 跳过测试
mvn spring-boot:run -DskipTests

# 指定端口
mvn spring-boot:run -Dspring-boot.run.arguments=--server.port=8081
# 或
mvn spring-boot:run -Dspring-boot.run.jvmArguments="-Dserver.port=8081"

2. 先打包再运行

复制代码
复制代码
复制代码
# 1. 打包(包含跳过测试)
mvn clean package -DskipTests

# 2. 运行 jar 包
java -jar target/你的应用名-版本号.jar
# 或指定 profile
java -jar target/你的应用名-版本号.jar --spring.profiles.active=dev

3. 通过 Maven 直接运行主类

如果不想用 Spring Boot 插件,可以使用:

复制代码
复制代码
复制代码
mvn exec:java -Dexec.mainClass="com.example.MainApplication"

📦 必须的 pom.xml 配置

确保 pom.xml中已添加 Spring Boot Maven 插件:

复制代码
复制代码
复制代码
<build>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
        </plugin>
    </plugins>
</build>

🔧 常用的组合命令

复制代码
复制代码
复制代码
# 清理并启动(跳过测试)
mvn clean spring-boot:run -DskipTests

# 指定配置文件和调试模式
mvn spring-boot:run -Dspring-boot.run.profiles=dev -Dspring-boot.run.jvmArguments="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005"

# 在 Windows 上设置环境变量
set MAVEN_OPTS=-Xmx512m && mvn spring-boot:run

💡 提示

  • 确保已安装 Maven 并配置了环境变量

  • 第一次运行会下载依赖,可能需要较长时间

  • 通过 Ctrl + C停止 Spring Boot 应用

  • 查看日志确认启动成功,默认端口是 8080

推荐使用 mvn spring-boot:run,这是开发时最便捷的方式。

相关推荐
创可贴治愈心灵几秒前
AI浪潮下C#就业前景剖析:深耕C#为主,按需选修Java与Python
java·人工智能·c#
huohaiyu15 分钟前
深入解析Java垃圾回收机制
java·开发语言·算法·gc
SunnyDays101129 分钟前
如何在 Java 中实现 OFD 与 PDF 格式互转
java·开发语言
小江的记录本1 小时前
【Spring全家桶】Spring Cloud 2023.0.x:微服务核心理论、CAP/BASE定理(附《思维导图》+《面试高频考点清单》)
java·spring boot·后端·spring·spring cloud·微服务·面试
Solis程序员1 小时前
缓存三剑客预防策略
java·spring·缓存
我登哥MVP2 小时前
Spring Boot 从“会用”到“精通”:Model-Map原理
java·spring boot·后端·spring·servlet·maven·mybatis
程序猿乐锅2 小时前
【苍穹外卖|Day02】后台接口自测闭环:Token、DTO 与 yml 配置
java·开发语言
心之伊始2 小时前
Spring Boot Actuator + Micrometer 自定义业务指标:不只是健康检查
java·架构·源码分析·csdn
Eason_LYC2 小时前
【GetShell 实战】CVE-2026-34486 Tomcat 加密拦截器绕过:从漏洞验证到反弹 Shell 全流程
java·渗透测试·tomcat·java反序列化·rce·远程代码执行漏洞·cve-2026-34486