2014-09-12 131 views
0

Grails的版本中運行GrailsPlugin.groovy:2.3.11如何「戰爭」

親愛的朋友們,

我有一個插件,其中在doWithSpring關閉我用一些主要的資源,建立一個屬性文件在戰爭中,然後在運行時使用。只有在生產環境中構建戰爭時,中央資源纔可用,因此將文件放入插件的/ src(例如)是不可能的。

目前我的插件將在運行應用程序和測試環境中工作,但在運行「戰爭」時從未創建該文件。

我曾嘗試設置範圍變量包括戰爭,但這似乎並沒有做太多(或至少,沒有調用doWithSpring封閉)。有誰知道如何做到這一點,或者如果有可能?

所有的邏輯都在doWithSpring中(它委託給一個類),但那只是使用classLoader和grailsApplication,所以如果有其他地方我可以做到這一點,這也將是偉大的。

感謝

亞當

+1

你們是不是要被包含在你的戰爭排除文件?你的問題並不清楚。 – 2014-09-12 16:53:11

+0

編號總結我想知道如何在'war'過程中運行GrailsPlugin.config,因爲我需要在構建戰爭時執行doWithSpring閉包。如果這是不可能的,我想知道在戰爭過程中是否有其他方式執行插件代碼。 – adamcooney 2014-09-12 17:36:16

回答

0

好,最好的辦法是掛鉤到與你的插件的事件。我強烈建議您閱讀有關events的文檔。這很簡單,只需在插件中創建正確的文件並將代碼放入關聯的閉包中即可。

例如:

腳本/ _Events.groovy

eventCreateWarStart = { warName, stagingDir -> 
// place your code here. 
}