You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

是否有与IntelliJ IDEA 'Run Application'等效的Spring Boot Maven任务?

如何在命令行快速运行Spring Boot项目(跳过Maven打包)

嘿,这个问题我太有共鸣了!Maven里一堆插件任务确实会拖慢打包运行的速度,其实命令行下完全能实现和IntelliJ IDEA直接跑Application类一样的快速度,不用等那些繁琐的打包步骤。给你几个实用的方案:

方案1:用Spring Boot Maven插件直接运行(最推荐)

Spring Boot官方的Maven插件自带了run目标,专门用来快速启动应用,它会跳过packageinstall这些耗时的生命周期阶段,只做必要的代码编译和资源处理,速度和IDEA直接跑几乎一致。

直接在项目根目录执行:

mvn spring-boot:run

如果想跳过单元测试(进一步提速),可以加参数:

mvn spring-boot:run -DskipTests

这个命令会自动识别你项目里的主类(就是带@SpringBootApplication注解的那个),编译修改过的Java文件,复制必要的资源文件,然后直接启动应用,完全不用生成Jar包。

方案2:编译后用Java命令直接运行主类

如果你不想依赖Maven插件,也可以先编译代码,再用Java命令直接启动主类:

  1. 先编译项目(这一步比打包快很多):
mvn compile
  1. 找到你的主类全限定名(比如com.yourpackage.YourApplication),然后执行:
java -cp "target/classes:~/.m2/repository/**/*" com.yourpackage.YourApplication

这里的-cp参数需要把编译后的类目录和所有Maven依赖都加到类路径里,不过手动写这个路径比较麻烦,所以还是方案1更省心。

为什么IDEA直接跑这么快?

其实IDEA的运行原理和mvn spring-boot:run类似:它只会编译你修改过的Java文件,把编译后的类和依赖库加到类路径,然后直接调用主类的main方法启动应用,完全跳过了Maven生命周期里的packageverify等阶段(这些阶段会触发打包、代码检查、测试报告等耗时任务)。

额外小技巧

如果你的项目绑定了一些非必要的插件(比如前端打包、静态代码检查插件),可以在运行时跳过它们,比如:

mvn spring-boot:run -DskipTests -DskipFrontendBuild

具体的跳过参数要看你项目里插件的配置文档,一般插件都会提供跳过的开关参数。

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

火山引擎 最新活动