0

根据这里的示例(实际上是时间戳任务),我实现了一个小任务类:

@SpringBootApplication
@EnableTask
@EnableConfigurationProperties({ RestProcessorTaskProperties.class })
public class RestProcessorTaskApplication {
    public static void main(String[] args) {
        SpringApplication.run(RestProcessorTaskApplication.class, args);
    }

    @Autowired
    private RestProcessorTaskProperties config;

    // some fields and beans

    @Bean
    public CommandLineRunner run(RestTemplate restTemplate) {
        return args -> {
            // doing some stuff
        };
    }
}

然后我创建了 Properties 类(在同一个包中)

@ConfigurationProperties("RestProcessor")
public class RestProcessorTaskProperties {
    private String host = "http://myhost:port";

    public String getHost() {
        return host;
    }

    public void setHost(String host) {
        this.host = host;
    }
}

但是在我在本地 Spring Cloud Data Server 上注册任务后,我看到了许多参数,我想这些参数是自动添加的。我的意思是参数,例如:

abandon-when-percentage-full            java.lang.Integer       
abandoned-usage-tracking                java.lang.Boolean       
acceptors                               java.lang.Integer       
access-to-underlying-connection-allowed java.lang.Boolean

和别的...

是否有可能以某种方式隐藏(或删除)它们,以便在启动任务时我只能配置那些由我添加的参数(我上面的示例中的单个主机属性)?

4

1 回答 1

1

默认情况下,Spring Cloud Data Flow 将显示启动应用程序的所有可用属性。但是,您可以创建要显示的属性的白名单。
这是 Spring Cloud Data Flow 参考文档的链接,该文档将讨论如何执行此操作: http: //docs.spring.io/spring-cloud-dataflow/docs/current/reference/htmlsingle/#spring-cloud-dataflow -流应用程序白名单

这里是时间戳启动应用程序的链接,其中有一个示例:https ://github.com/spring-cloud/spring-cloud-task-app-starters/tree/master/spring-cloud-starter-task-时间戳

于 2016-12-07T14:33:26.933 回答