2011-10-03 48 views
1

我正在研究使用FreeMarker的大型項目。我是FreeMarker的新手。我怎樣才能找到哪些類的java被用來接收模板的值?調查所有的項目似乎是巨大的工作。 謝謝。 可能需要一些Eclipse插件?FreeMarker如何找到相應的java類

回答

2

FreeMarker是一個典型的「動態語言」,這意味着重構/改變很難。模板沒有聲明他們期望在數據模型中。此外,當模板嘗試從數據模型中讀取值時(例如${foo.bar}),這可能意味着foo.get("bar")foo.getBar()ObjectWrapper所使用的任何值,並且只有在模板執行時纔會決定。當然,如果你改變了一些東西,你將需要回歸到古老的搜索替換和大量測試(一個好的測試套件是必不可少的......)。當然,您可以查看程序中建立數據模型的位置,並查看放入的內容。或者在運行時以某種方式轉儲數據模型。

+1

儘管像Intellij Idea這樣的編輯確實支持在註釋中註釋變量類型,並使重構變得簡單易行。 –

+1

好點。在較大型的項目中,最好將有關預期變量的註釋放入模板中,但如果IDE明白這一點,那會更好。當然,這些評論的主要問題是,沒有什麼能保證它們與現實保持同步...... – ddekany