参考官网
一、idea 本地运行
使用Flink官方的ParameterTool或者其他工具都可以。
二、集群运行flink run/run-application
(1)ParameterTool 获取参数
以-D
开头的参数:
ParameterTool parameter = ParameterTool.fromSystemProperties();
(2)Env获取参数
举个例子使用以下方式启动flink job。
flink run application -Dstate.savepoints.dir=hdfs://mycluster/flink/flink-checkpoints/my-job ...
可通过以下代码获取:state.savepoints.dir 参数
ExecutionEnvironment env = ExecutionEnvironment.getExecutionEnvironment();// flink run/run-application添加参数-s 和 --fromSavepointString savepointRestorePath = env.getConfiguration().get(SavepointConfigOptions.SAVEPOINT_PATH);
需要说明:使用StreamExecutionEnvironment
和 StreamTableEnvironment
都无法获取参数。