[Java]使用 java -jar 启动 Java 程序并指定端口号和激活的 Profile

要使用 java -jar 启动 Java 程序并指定端口号和激活的 Profile(如 Spring Boot 应用),可以通过以下方式传递参数:


命令格式

java -Dfile.encoding=UTF-8 -Dserver.port=<端口号> -Dspring.profiles.active=<Profile名称> -jar <应用jar文件>

  • -Dfile.encoding: 设置JVM的默认文件编码为UTF-8,避免中文乱码。(这个参数设置JVM的默认文件编码为UTF-8。这对于处理中文或其他非ASCII字符的文件读写超级重大,避免乱码问题。不过需要注意的是,这个参数会影响整个JVM,而不仅仅是应用程序本身,所以如果有其他部分依赖特定编码可能会受影响。)
  • -Dserver.port:指定服务监听的端口号(Spring Boot 专用参数)。
  • -Dspring.profiles.active:指定激活的 Profile(如 devprod 等)。
  • -jar <应用jar文件>:指定要运行的 JAR 文件。

示例

假设应用名为 myapp.jar,指定端口为 8080,激活 prod Profile:

java -Dserver.port=8080 -Dspring.profiles.active=prod -jar myapp.jar


其他常见场景

  1. 同时指定多个 Profile(逗号分隔):

    java -Dserver.port=8080 -Dspring.profiles.active=prod,secure -jar myapp.jar
    

  2. 结合其他 JVM 参数(如内存配置):

    java -Xmx512m -Dserver.port=8080 -Dspring.profiles.active=prod -jar myapp.jar
    


注意事项

  • 参数顺序-D 开头的 JVM 参数需放在 -jar 之前,否则会被忽略。
  • 框架依赖server.portspring.profiles.active 是 Spring Boot 的配置项,其他框架可能有不同参数。
  • 优先级:命令行参数的优先级高于配置文件(如 application.properties)。

如果需要进一步协助,请提供具体应用框架或场景!

© 版权声明
THE END
如果内容对您有所帮助,就支持一下吧!
点赞0 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容