當使用Google的Guice注入程序掃描類以找到其依賴關係時限制繼承深度,有什麼辦法嗎?Guice可以限制類型層次掃描嗎?
我的意思是,如果你定義一個類A像
class A extends X {
@Inject
private B a;
}
而且我得到了繼承類:A - > X - >Ÿ - >ž
我只是想成爲掃描和X,但不是像Y和Z這樣的上層類。我很確定沒有字段可以在兩個類中注入。
我的目標是提升啓動階段。
這可能嗎?
當使用Google的Guice注入程序掃描類以找到其依賴關係時限制繼承深度,有什麼辦法嗎?Guice可以限制類型層次掃描嗎?
我的意思是,如果你定義一個類A像
class A extends X {
@Inject
private B a;
}
而且我得到了繼承類:A - > X - >Ÿ - >ž
我只是想成爲掃描和X,但不是像Y和Z這樣的上層類。我很確定沒有字段可以在兩個類中注入。
我的目標是提升啓動階段。
這可能嗎?
RoboGuice團隊正在這方面積極努力。對於那些有興趣的人來說,RG 3.0將包含基於這種技術的guice分支。
更多細節在這裏:https://speakerdeck.com/stephanenicolas/blender-boosting-guice-with-annotation-processing
我不認爲這是可能的,我敢打賭,增益可以忽略不計。爲了收集註入點,Guice只需掃描一次類層次結構,通常更耗時的部分就是注入本身。
注入本身的成本與類層次無關,它取決於要處理的對象的數量和要注入的字段的數量。
thx爲答案。但我的問題更適用於Android,資源實際上總是非常有限。無論是安裝所有類的反射模型還是掃描它們,都將消耗無用的資源,並且我只想將其限制爲僅有用的信息。你認爲這樣的功能可能會讓Guice團隊感興趣嗎?(即限制掃描區域)? – Snicolas
@Snicolas:我很懷疑,我猜Guice是相當被認爲是完成的。你可以爲自己修補它,但首先要做好一些分析,這樣你纔不會浪費時間。 – maaartinus
Beta @maartinus不是Guice 4嗎? – Snicolas