首页 > 解决方案 > 将“程序参数”传递给 CloudFoundry 中的 cf run-task

问题描述

我已经为 PCF 中的任务/作业部署了一个 Spring-boot 应用程序。我还可以使用以下命令触发 springboot 应用程序的“主要”方法。

cf run-task APP-NAME "$PWD/.java-buildpack/oracle_jre/bin/java 
org.springframework.boot.loader.JarLauncher"

但是我想在传入 IntelliJ IDE 时传递“程序参数”,以便我可以在 main 方法的 args 中获得该值。

public static void main(String[] args)

期待像这样的命令,

cf run-task APP-NAME "$PWD/.java-buildpack/oracle_jre/bin/java 
org.springframework.boot.loader.JarLauncher --arg0=value0 --arg1=value1"

如果您遇到此用例,请告诉我。在此先感谢!

标签: spring-bootcloud-foundrycloudfoundry-uaasap-cloud-foundry

解决方案


您可以使用以下方法为您的程序定义参数:

cf set-env APP-NAME arg0 value0 arg1 value1

最佳实践要求在此之后重新部署您的应用程序:

cf restage APP-NAME

现在你可以像往常一样运行你的程序了:

cf run-task APP-NAME "$PWD/.java-buildpack/oracle_jre/bin/java org.springframework.boot.loader.JarLauncher"


推荐阅读