java -jar 命令行替换参数
修改入口类,添加args,
在run里面添加args参数即可完成参数化启动。
application.run(args);
例如:
public class HelloworldApp {
public static void main(String[] args) {
SpringApplication application = new SpringApplication(MxskETLApp.class);
application.setBannerMode(Banner.Mode.OFF);
application.run(args);
log.info("xxxx Server Starting Successfully !");
}
参数化启动java
java -jar xxxx.jar --spring.profiles.active=dev
也可以指定其他参数
java -jar xxxx.jar --spring.profiles.active=dev --spring.cloud.nacos.discovery.server-addr=xxxxx:8848 --spring.cloud.nacos.config.server-addr=xxxxxxx:8848 --spring.cloud.nacos.config.namespace=data-dev --spring.cloud.nacos.discovery.namespace=data-dev
nacos 简单配置
spring:
application:
name: hello-service
profiles:
active: dev
group: hello-world-service
cloud:
nacos:
config:
prefix: ${spring.application.name}-${spring.profiles.active}
file-extension: properties
namespace: dev
group: ${spring.group}
server-addr: 192.168.1.201:8848
discovery:
group: ${spring.group}
namespace: dev
因为我重定义了prefix,获取配置文件dataid会根据变量获取。
例如,
- ${spring.profiles.active} 启动参数为–spring.profiles.active=dev,则会获取
hello-service-dev.properties配置文件 - ${spring.profiles.active} 启动参数为–spring.profiles.active=test,则会获取
hello-service-test.properties配置文件 - ${spring.profiles.active} 启动参数为–spring.profiles.active=prod,则会获取
hello-service-prod.properties配置文件