运行jar时配置服务器端口

新手上路,请多包涵

我目前正在使用 Gradle 使用 Java 8 编写的 Spring Boot 应用程序。我正在寻找的是在从命令行运行 Jar 时将服务器端口作为参数传递。

例如:

  • java -jar myApplication.jar --port=8888 :这使用端口运行我的Spring引导应用程序 8888
  • java -jar myApplication.jar :由于没有端口号作为参数传递,spring boot 应用程序应该在默认端口号上运行(假设 8080

谁能帮我这个 ?

原文由 T code 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 827
2 个回答

Spring boot 文档 中,命令行是:

 java -Dserver.port=8888 -jar myApplication.jar

您还可以按照文档中的说明使用 Spring 引导配置 文件

原文由 Mickael 发布,翻译遵循 CC BY-SA 3.0 许可协议

注意 始终在 --- 参数 之前 传递 -jar -D<key>=<value> JVM 参数,否则它不会接受您的参数,然后它将以默认值运行。例如:

在特定端口上执行 jar 的正确 java 命令是:

 java -Dserver.port=8888 -jar target/my-application-jar-path.jar

上面的命令将在端口 8888 上运行 JVM,但是下面的命令

java -jar target/my-application-jar-path.jar -Dserver.port=8888

将在端口 8080 上运行,它将 忽略 -jar 之后的 JVM 参数

spring-boot 应用程序的最佳实践是将 server.port 设置为 application.properties 文件:

 server.port=9090

或者在具有特定 ENVIROMENT 的特定 application-<ENV>.properties 文件上。

原文由 krishna Prasad 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题