在Spring boot .conf文件中写入多行字符串

时间:2016-08-03 08:06:43

标签: syntax spring-boot config

对于我的Spring启动应用程序,我有一个用于运行应用程序的.conf文件。 在这个文件中,我放了一些jvm选项。 目前它包含:

JAVA_OPTS="-Xms256m -Xmx512m -Dvisualvm.display.name=ApplicationWs -Dcom.sun.management.jmxremote.port=3333 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false"

将来我肯定会添加其他选项,这条线的尺寸会增加。 我希望通过逐行编写一个或两个选项来使其更具可读性。但我找不到合适的语法。

我想做这样的事情:

# Heap Size
JAVA_OPTS="-Xms256m -Xmx512m"

# JVisualVM Name in VisualVM
JAVA_OPTS="$JAVA_OPTS -Dvisualvm.display.name=ApplicationWs"

# Jmx Configuration
JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote.port=3333 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false"

我已经尝试过:

JAVA_OPTS="-Xms256m -Xmx512m"
JAVA_OPTS="$JAVA_OPTS -Dvisualvm.display.name=ApplicationWs"
export JAVA_OPTS
JAVA_OPTS="-Xms256m -Xmx512m"
JAVA_OPTS="${JAVA_OPTS} -Dvisualvm.display.name=ApplicationWs"
export JAVA_OPTS
JAVA_OPTS="-Xms256m -Xmx512m 
-Dvisualvm.display.name=ApplicationWs"
JAVA_OPTS="-Xms256m -Xmx512m "
+ " -Dvisualvm.display.name=ApplicationWs"

spring-boot .conf文件中多行字符串的正确语法是什么?

2 个答案:

答案 0 :(得分:3)

Spring启动启动脚本将使用shell来获取.conf文件,因此您可以使用任何shell脚本语法来编写配置。我更愿意使用vars在你的情况下格式化它们,如下所示:

MEM_OPTS='-Xms256m -Xmx512m'
DISPLAY_NAME='visualvm.display.name=ApplicationWs'
JMXREMOTE_PORT='com.sun.management.jmxremote.port=3333'
JMXREMOTE_SSL='com.sun.management.jmxremote.ssl=false'
JMXREMOTE_AUTH='com.sun.management.jmxremote.authenticate=false'

JAVA_OPTS="${MEM_OPTS} -D${DISPLAY_NAME} -D${JMXREMOTE_PORT} -D${JMXREMOTE_SSL} -D${JMXREMOTE_AUTH}"

请参阅here

答案 1 :(得分:1)

尝试这样的多行:

primes = 2,\
    3,\
    5,\
    7,\
    11

来自:https://stackoverflow.com/a/8978515/404145