プレースホルダ(e.x。$ {PARAM1})を持つテンプレートがある場合、プログラムはそれらを正常に解決します。しかし、私がテンプレートエンジンに渡したプレースホルダだけを解決し、他の$ {}を無視したままにしておきたい場合はどうすればいいですか?現在、すべてのプレースホルダを解決できない場合、プログラムは失敗します。Groovyのテンプレートエンジンで欠落しているパラメータを無視する方法
static void main(String[] args) {
def template = this.getClass().getResource('/MyFile.txt').text
def parameters = [
"PARAM1": "VALUE1",
"PARAM2": "VALUE2"
]
def templateEngine = new SimpleTemplateEngine()
def output = templateEngine.createTemplate(template).make(parameters)
print output
}
ファイル:$ {PARAM1} $ {PARAM2} $ {PARAM3}
おかげ
は、あなたが期待される出力を書き込むことができますか? – dsharew
予想される出力:VALUE1 VALUE2 $ {PARAM3} – Paul
正直言って、グルーヴィーテンプレートエンジンがパラメータを無視する方法をサポートしているかどうかはわかりません。しかし、あなたはあなたのパラメータを次のように変更できます: '' 'def parameters = [ " PARAM1 ":" VALUE1 "、 " PARAM2 ":" VALUE2 "、 " PARAM3 ":" \ $ {PARAM3} " ] '' 'これはあなたに期待される出力を与えるでしょう。 – dsharew