【问题标题】:How to access to MULE_HOME variable from a file properties?如何从文件属性访问 MULE_HOME 变量?
【发布时间】:2017-12-03 08:22:45
【问题描述】:

我想从文件属性中访问 MULE_HOME 变量,我已经使用了muleEnv=${MULE_HOME},但它不起作用。

【问题讨论】:

    标签: mule environment-variables properties-file


    【解决方案1】:

    Mule Home 可以使用 MEL 表达式访问:- #[mule.home] 在流程中
    您可以将此表达式放在属性文件中,如下所示:-

    muleEnv=#[mule.home]
    

    并且可以在流程中访问:-

    <logger level="INFO" message="## Mule home: ${muleEnv}" doc:name="Logger"/>
    

    简单易行:)

    【讨论】:

    • 感谢您的回复,但这并不像您说的那样简单和容易,它不起作用。我想使用 mule-deploy.properties 中的 key=value 从服务器而不是应用程序访问 mule.home
    【解决方案2】:

    服务器是什么意思?您是指 Mule Runtime 还是运行 Mule Runtime 的计算机?

    您可以尝试使用 -M-Dmule.home.dir=%MULE_HOME% 来初始化您的 mule 运行时。

    在这种情况下,运行时将包含 MULE_HOME 目录,您应该可以使用 ${mule.home.dir}

    这根本不是必需的,当初始化 mule 运行时,你应该有一个属性 mule.home 与 MULE_HOME 变量的值,尝试将 ${MULE_HOME} 更改为 ${mule.home} 或 ${ mule.base}

    这对我有用:

    test.properties --> test.var.home=${mule.home}

    在我的流程中:

     <logger message="${test.var.home}" level="INFO" doc:name="Logger"/>
    

    【讨论】:

    • @7533972,我的意思是 mule 运行时,我已经用 -M-Dmule.home=%MULE_HOME% 初始化了我的 mule 运行时。 ,当我尝试通过 mule-deploy.properties 访问此属性时,他将 $MULE_HOME 视为字符串而不是属性。我不想通过记录器或其他东西访问此属性,我想通过 mule-deploy.properties 访问
    猜你喜欢
    • 2013-01-23
    • 2017-06-25
    • 1970-01-01
    • 2018-07-31
    • 2012-05-08
    • 2014-06-15
    • 1970-01-01
    • 2015-07-22
    • 1970-01-01
    相关资源
    最近更新 更多