1
我正在構建我的第一個maven插件,並針對maven 3.我試圖理解實例化策略如何發揮線程安全性。如果我保留默認的「每查找」策略,那是什麼意思?對我來說,這意味着插件的每次執行都會實例化一個新的mojo,這使得編寫一個非線程安全的插件幾乎是不可能的。Maven線程安全插件陷阱
如果我選擇「singleton」策略,我可以看到線程安全問題是如何出現的,因爲同一個mojo可能同時在不同的線程中使用,導致通常的線程安全問題(即類級變量)發揮作用。
總之,每個查找實例化策略是否像我想的那樣工作?什麼是一些通用的經驗法則/指導方針,以確保maven 3插件實際上是線程安全的(並且不僅在@Mojo註釋中標記爲線程安全)?
啊,我沒在想靜態變量。如果可能的話,我會避免它們(除非它們當然是最終的)。謝謝! – jasonf