Intellij IDEA带参数启动Springboot注意事项

问题

不同版本的spring-boot-maven-plugin的jvm参数配置有所不同,同时与通过main方法启动springboot程序传递参数也有所不同。

分析

在运行main方法时,可以通过java -jar 后面通过添加-D的参数即可传递,比如:

java -jar -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005 test-tool.jar

而对于通过spring-boot-maven-plugin插件的run方法启动时传递参数,不同版本就有所差异。通过插件启动方式如下图:

在此只以1.5.4.RELEASE版本为例,pom.xml文件配置:

<build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <configuration>
                    <jvmArguments>-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005</jvmArguments>
                </configuration>
            </plugin>
        </plugins>
    </build>

此时运行spring-boot:run,是可以正常传递参数。但此时通过mvn spring-boot:run命令来传递参数,参数值将会无效。

同样,即使项目中pom文件配置了上面的plugin,直接通过main方法启动,此参数也是不会生效的。打包部署时依旧需要在执行命令中添加参数项。

总之,就是启动springboot时传递参数,在某些情况是有效,在某些情况是无效的。而spring-boot-maven-plugin配置的参数是针对上图中执行spring-boot:run时生效的。

延伸阅读

相关类似可参考资料: https://github.com/spring-projects/spring-boot/issues/875 http://docs.spring.io/spring-boot/docs/current/maven-plugin/examples/run-debug.html https://github.com/spring-projects/spring-boot/wiki/Spring-Boot-1.1-Release-Notes#running-your-app-using-maven https://github.com/spring-projects/spring-boot/issues/1095

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏nice_每一天

理解 IntelliJ IDEA 的项目配置和Web部署

IDEA 中最重要的各种设置项,就是这个 Project Structre 了,关乎你的项目运行,缺胳膊少腿都不行。最近公司正好也是用之前自己比较熟悉的IDEA...

5472
来自专栏FreeBuf

短小精干的Unix类后门Tiny shell的使用与分析

0x00. 简介 Tiny Shell 是一款开源的Unix类后门shell工具,由C语言编写,体积小(在kali系统上编译后只有55K大小) ? 分为客户端和...

4925
来自专栏云原生架构实践

JHipster生成单体架构的应用示例

因为这个例子是生成单体架构的应用,所以这里选择默认选项Monolithic application,也就是单体架构的应用。

1.1K2
来自专栏Theo Tsao

Linux用户和文件权限管理

本文包含: 用户管理、用户组管理、基本权限及管理命令、POSIX ACL 权限系统及其管理命令。

1374
来自专栏偏前端工程师的驿站

打造高效前端工作环境-tmuxinator

前言  虽然tmux能让我们方便组织工作环境,但每次重新打开会话时都需要手动重新创建窗口、窗格和执行各种程序,能不能像VS那样以工程为单位保存窗口、窗格和各种所...

27610
来自专栏青玉伏案

Swift3.0服务端开发(二) 静态文件添加、路由配置以及表单提交

今天博客中就来聊一下Perfect框架的静态文件的添加与访问,路由的配置以及表单的提交。虽然官网上有聊静态文件的访问的部分,但是在使用Perfect框架来访问静...

2367
来自专栏假装我会写代码

又一篇 Deployer 的使用攻略

2236
来自专栏Java学习123

shell获取当前工作目录绝对路径

2.4K7
来自专栏pangguoming

kafka 主要内容介绍

根据官网的介绍,ApacheKafka®是一个分布式流媒体平台,它主要有3种功能:

1415
来自专栏Golang语言社区

einx: 一个用Go构建的游戏服务器

a framework in golang for game server or app server.

2383

扫码关注云+社区

领取腾讯云代金券