Ant xml:如何打破选项的long值属性

时间:2016-05-25 20:22:11

标签: xml tomcat ant

我有tomcat.jmx的这个jvmarg 选项跨越多行,我希望每行中断一个选项。 但这不是蚂蚁可以接受的。人们如何用长值参数编写这个xml。

 <property name="tomcat.jvmarg.jmx" value="-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=${tomcat.jmxport}
             -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.rmi.port=${tomcat.jmxport} -Djava.rmi.server.hostname=localhost -Dcom.sun.management.jmxremote.local.only=true -Dcom.sun.management.jmxremote.ssl.need.client.auth=true -Dcom.sun.management.jmxremote.ssl.enabled.protocols=TLSv1 -Djavax.net.ssl.keyStore=${tomcat.jmxkeystore} -Djavax.net.ssl.keyStorePassword=${tomcat.jmxpass}"/>

我试过这个并且启动tomcat失败了,因为参数中的换行是一个障碍。

无效

            <property name="tomcat.jvmarg.jmx"
                      value="-Dcom.sun.management.jmxremote
                             -Dcom.sun.management.jmxremote.port=${tomcat.jmxport}
                             -Dcom.sun.management.jmxremote.authenticate=false
                             -Dcom.sun.management.jmxremote.ssl=false
                             -Dcom.sun.management.jmxremote.rmi.port=${tomcat.jmxport}
                             -Djava.rmi.server.hostname=localhost"
                                                                  />

1 个答案:

答案 0 :(得分:1)

tomcat.jvmarg.jmx任务是<java>吗?如果是,请考虑在<jvmarg> ...

下嵌套<java>元素
<java ...>
    <jvmarg value="-Dcom.sun.management.jmxremote"/>
    <jvmarg value="-Dcom.sun.management.jmxremote.port=${tomcat.jmxport}"/>
    <jvmarg value="-Dcom.sun.management.jmxremote.authenticate=false"/>
    <jvmarg value="-Dcom.sun.management.jmxremote.ssl=false"/>
    <jvmarg value="-Dcom.sun.management.jmxremote.rmi.port=${tomcat.jmxport}"/>
    <jvmarg value="-Djava.rmi.server.hostname=localhost"/>
    <jvmarg value="-Dcom.sun.management.jmxremote.local.only=true"/>
    <jvmarg value="-Dcom.sun.management.jmxremote.ssl.need.client.auth=true"/>
    <jvmarg value="-Dcom.sun.management.jmxremote.ssl.enabled.protocols=TLSv1"/>
    <jvmarg value="-Djavax.net.ssl.keyStore=${tomcat.jmxkeystore}"/>
    <jvmarg value="-Djavax.net.ssl.keyStorePassword=${tomcat.jmxpass}"/>
</java>

这提供了一种在避免换行问题的同时轻松查看所有参数的方法。