我在一個巨大的產品中有一堆我不想使用的類,而是我想將它們的用途重定向到不同的類。這些類(和接口)大多是日誌記錄類。例如,org.apache.log4j
類(很久以前)採用不同的包名稱導入到源中,如foo.org.apache.log4j
。Java代碼反射和爲類重定向生成外立面
現在,我想使用一些使用這些導入和重命名的類但沒有這些導入和重命名的類的組件。這是因爲導入的數據源是舊的並且缺少功能,所以我不能按原樣使用它。此外,有兩種不同的log4j的實現中,老一個進口原裝的log4j,創建配置過程中的問題,等等。
我的作戰計劃,到目前爲止,是爲了排除不需要的依賴關係pom.xml
並以某種方式自動生成幕牆這將取代不需要的類,並將重定向到原始庫。例如,foo.org.apache.log4j.Logger
將被替換爲從org.apache.log4j.Logger
繼承的外觀。
現在,是否有任何類型的庫或工具可以輕鬆遍歷由foo.org.apache.log4j
定義的所有現有類,並允許我生成這些外觀,還是必須使用反射自行實現所有內容?
行,爲什麼近距離投票?這個問題有什麼問題? – wilx 2015-02-23 11:34:28
我不是那個投了近距離投票的人,但這可能是因爲你開始談論反思之後,如何提出你的問題來問一個「圖書館或工具」。 – Vulcan 2015-02-23 11:36:15