从命令行运行时,如何将JVM参数添加到Spring引导中



我正在使用Spring Boot 2.1.5.Release。我想启动通过一些JVM参数传递的嵌入式tomcat服务器,以便可以在Eclipse中调试我的应用程序。我尝试这样做

localhost:todoapp-backend davea$ java -jar build/libs/todoapp-backend.jar -Drun.jvmArguments="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,address=8787"

以及此

localhost:todoapp-backend davea$ java -jar build/libs/todoapp-backend.jar -Xdebug -Xrunjdwp:transport=dt_socket,server=y,address=8787

,但似乎都没有做任何事情,因为它看起来服务器正常启动,但是我的调试端口已关闭(每个telnet(...

localhost:todoapp-backend davea$ telnet localhost 8787
Trying ::1...
telnet: connect to address ::1: Connection refused
Trying 127.0.0.1...
telnet: connect to address 127.0.0.1: Connection refused
telnet: Unable to connect to remote host

使用远程启用调试:

java -jar myapp.jar -Dagentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=8000

或通过Maven Run目标,例如:

mvn spring-boot:run -Dspring-boot.run.jvmArguments="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=5005"

将地址端口更改为您要使用的任何值。

在Springboot 2中,不需要-Drun.arguments部分,您可以跳过并在-d之后直接提供环境过度参数:

$ java -jar myproject.jar --spring.config.name=myproject

最新更新