FMPP Mavenプラグインを使用して、単純なHTMLページを組み立てるためにFreemarkerを使い始めました。ここまでは順調ですね。しかし、私がしなければならないことの1つは、システムプロパティ(Mavenが提供するシステムプロパティの1つ)の値をページに含めることです。Freemarkerテンプレートからシステムプロパティにアクセスする方法はありますか?(そうでない場合は、プラグインをハックしてMavenから値を渡すことができるようにする必要があるかもしれません)
5051 次
2 に答える
3
参照https://community.jivesoftware.com/thread/14820
次のようにアクセスできます。
${statics['java.lang.System'].getProperty("my.property")}
ここのcfドキュメント: http://freemarker.sourceforge.net/docs/pgui_misc_beanwrapper.html
于 2011-06-18T07:39:39.333 に答える
2
FMPP には、すべてのテンプレートが参照する変数を指定すると呼ばれる設定があるため、そこにシステム プロパティを配置する必要があります。data
そこに値を入れるには、値を単純なリテラルとして指定できない場合を除き、いわゆるデータローダーが必要です。したがって、この場合、システム プロパティをjava.util.Properties
オブジェクトとして返すデータ ローダーが必要です。そのためのデータローダーは特にありませんが、次のeval
ようにデータローダーを使用できます( でconfig.fmpp
):
data: {
...
sysProps: eval('System.getProperties()')
...
}
テンプレートで、 などのシステム プロパティにアクセスできるようになりsysProps["os.name"]
ました。
または、カスタム FMPP データローダーを作成することもできます。http://fmpp.sourceforge.net/dataloader.html#sect19を参照してください。
于 2011-06-18T23:42:45.463 に答える