在一個大量使用反射來選擇基於環境的類的項目中,有沒有一種方法可以確定在構建中包含哪些庫?目前,從項目中拿出一個圖書館是一場賭博,但堅持現有的「包括所有東西,這是唯一可以肯定的方式」的計劃,使整個事情變得臃腫和笨拙。類路徑和反射
Q
類路徑和反射
0
A
回答
1
不幸的是,對於類動態加載,特別是使用類名稱作爲字符串傳遞的工廠來說,這不會有困難。
如果您的jvm支持-Xcomp and -Xbatch
選項以及-XX:CompileThreshold
,您可以在開發和測試環境中使用它。它會增加你的啓動時間。
這些選項只會讓您的工作更輕鬆,但您仍然可能需要徹底測試。
1
您可以使用JavaAssist lib在運行時包含新的類路徑或修改類。
你可以註冊一個目錄名作爲類搜索路徑。例如,下面的代碼添加了一個目錄/ usr /本地/ javalib搜索路徑:
ClassPool pool = ClassPool.getDefault();
pool.insertClassPath("/usr/local/javalib");
,該用戶可添加的搜索路徑不僅是一個目錄,但也有網址:
ClassPool pool = ClassPool.getDefault();
ClassPath cp = new URLClassPath("www.javassist.org", 80, "/java/", "org.javassist.");
pool.insertClassPath(cp);
相關問題
- 1. 反射getDeclaredMethods()和不在類路徑中的類
- 2. 使用Java反射從類路徑中加載類
- 3. 路由和反射問題
- 4. 類和路徑
- 5. 如何使用反射包從類路徑創建對象
- 6. 反射和泛型類型
- 7. Java類加載和反射
- 8. Java類文字和反射?
- 9. 內存映射類路徑資源
- 10. 無法映射路徑'/ doc'。 server.map路徑
- 11. PhpStorm映射路徑
- 12. 從本地路徑或映射路徑獲取UNC路徑
- 13. J2EE反射類
- 14. Java反射類
- 15. 存儲文件的路徑和映射
- 16. 請求映射和源路徑
- 17. 反射類型和類型描述符
- 18. sbt,碼頭和類路徑
- 19. Spark Java和類路徑
- 20. Servlet容器和類路徑
- 21. 使用反射在運行時向類路徑添加文件的危險
- 22. 通過反射獲得完整的「路徑」(C#)
- 23. 如何使用反射獲取ASP.NET調試路徑?
- 24. 使用反射在FileInputStream中訪問路徑變量
- 25. 映射路徑問題
- 26. System.InvalidOperationException:未能映射路徑「/」
- 27. 無法映射路徑'/'
- 28. 映射到物理路徑
- 29. Biztalk映射邏輯路徑
- 30. 提起URL路徑映射?
另外,檢查這個問題:http://stackoverflow.com/questions/3369791/java-vm-tuning-xbatch-and-xcomp – naikus 2010-08-13 07:49:21