我有两个版本的 JAR,它们的 API(方法签名)略有不同,一个是新版本,另一个是旧版本。
我想创建一个可以使用其中任何一个的应用程序(虽然一次只能使用一个),如果需要的话可以回退到旧的 jar。
为此,我有两个版本的相关类,一个使用旧 API,一个使用新 API。我可以使用环境变量来指定类路径中的 JAR,然后应用程序可以使用相同的变量来决定使用哪个类。
我的问题是,考虑到它们是针对不同的 JAR 构建的,如何在同一个项目中轻松构建这两个类?有什么简单的解决方案吗?
最佳答案
不要在类路径上显示您的 jar。为每个 jar 创建两个不同的 URLClassLoader 并手动加载类 classLoader1.loadClass 或 classLoader2.loadClass
关于java - 使用 jar 的两个版本的简单方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19222540/