在一个大量使用反射来选择基于环境的类的项目中,有没有一种方法可以确定在构建中包含哪些库?目前,从项目中拿出一个图书馆是一场赌博,但坚持现有的“包括所有东西,这是唯一可以肯定的方式”的计划,使整个事情变得臃肿和笨拙。类路径和反射
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