在启动 JAR 包时指定端口号,通常取决于该 JAR 包所使用的框架及其配置方式。以下是在常见情况下(如使用 Spring Boot 框架)启动 JAR 包并指定端口号的详细步骤:
一、确定 JAR 包是否支持指定端口启动
- 大多数基于 Spring Boot 等现代 Java 框架打包的 JAR 文件都支持通过命令行参数或配置文件来指定启动端口。
二、查找指定端口的设置方法
- 命令行参数:在启动 JAR 包时,可以通过命令行直接传入端口号。
- 配置文件:在 JAR 包的配置文件(如
application.properties
或application.yml
)中设置端口号。
三、在命令行中添加参数或在配置文件中设置端口
解决方案1:
你可以使用命令行参数-Dproperty=value
来设置系统属性,然后在你的应用中通过System.getProperty("property")
来获取这个值。
例如,你可以在启动jar的时候加上-Dserver.port=8080
,然后在你的应用中通过System.getProperty("server.port")
来获取端口号,然后设置到你的应用服务器中。
1. 使用命令行参数
假设 JAR 文件名为 your-application.jar
,可以通过以下命令启动应用并指定端口:
java -jar your-application.jar --server.port=8081
在这个命令中,--server.port=8081
用于指定服务器监听的端口号为 8081。
2. 使用配置文件
-
application.properties
:
在 src/main/resources/application.properties
文件中添加以下配置:
server.port=8081
application.yml
:
如果使用的是 YAML 格式的配置文件,则在 src/main/resources/application.yml
中设置:
server:
port: 8081
四、运行修改后的命令行或配置来启动 JAR 包
- 如果使用命令行参数,则直接运行上述
java -jar
命令。 - 如果修改了配置文件,则重新打包 JAR 文件(如果之前是通过构建工具如 Maven 或 Gradle 打包的),并使用
java -jar
命令启动新生成的 JAR 文件。
五、验证 JAR 包是否在指定的端口上成功启动
- 在启动成功后,可以打开浏览器或使用工具(如 Postman)访问指定的端口和路径,例如
http://localhost:8081/your-endpoint
(将your-endpoint
替换为实际的服务端点)。 - 如果能够成功访问并看到预期的响应,则说明 JAR 包已在指定的端口上成功启动。
示例代码
以下是一个简单的 Spring Boot 应用示例,展示了如何在指定的端口上启动并返回一个简单的 "Hello World" 消息:
打包并启动应用
- 使用 Maven 或 Gradle 将项目打包为 JAR 文件。
- 在控制台中执行以下命令启动应用并指定端口:
bashCopy Code
java -jar target/your-application.jar --server.port=8081
- 打开浏览器或使用工具访问
http://localhost:8081/hello
,验证是否能够看到 "Hello, World!" 返回信息。
通过以上步骤,你可以成功地在启动 JAR 包时指定端口号,并验证其是否在指定的端口上成功启动。
@echo off
title API-%date%-%time%-%cd%)
java -Dfile.encoding=utf-8 -jar -Dserver.port=8022 -Xms1024m -Xmx4096m -XX:PermSize=128M -XX:MaxPermSize=256M -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=6001 app-2.0.0.jar --spring.datasource.dynamic.publickey=MAAQ==