【问题标题】:Easy way to use two versions of a jar?使用两个版本的 jar 的简单方法?
【发布时间】:2013-10-13 21:22:42
【问题描述】:

我有两个版本的 JAR,其 API(方法签名)略有不同,一个是新版本,另一个是旧版本。

我想创建一个可以使用其中任何一个的应用程序(虽然一次只能使用一个),如果需要可以回退到旧 jar。

为此,我有两个版本的相关类,一个使用旧 API,一个使用新 API。我可以使用环境变量来指示哪个 JAR 在类路径中,然后应用程序可以使用相同的变量来决定使用哪个类。

我的问题是,鉴于它们是针对不同的 JAR 构建的,我如何轻松地在同一个项目中构建这两个类?有什么简单的解决办法吗?

【问题讨论】:

  • 似乎没有提供“简单”的解决方案,但您可以在this question 中找到一些有用的信息。

标签: java build jar


【解决方案1】:

不要在类路径上显示你的 jar。为每个 jar 创建两个不同的 URLClassLoader 并手动加载您的类 classLoader1.loadClass 或 classLoader2.loadClass

【讨论】:

  • 这会完全搞砸 Eclipse 的静态分析,对吧?
猜你喜欢
  • 1970-01-01
  • 2013-11-07
  • 2018-04-28
  • 2012-06-18
  • 2016-04-08
  • 2011-07-20
  • 1970-01-01
  • 1970-01-01
  • 2013-10-24
相关资源
最近更新 更多