gpt4 book ai didi

java - 部署时如何将 jar 文件包含在不同的包中

转载 作者:行者123 更新时间:2023-11-30 04:38:36 25 4
gpt4 key购买 nike

我有一个 ant 脚本,用于构建 J2EE 应用程序并创建 jar 文件。问题如下:应用程序的运行需要两个 jar 文件。

commons-math-2.0.jar
commons-math-1.0.jar

但是,我只想对应用程序内的特定包使用 2.0,而应用程序的其余部分则使用 1.0。如何构建仅使用 2.0 版本的应用程序,例如使用 com.naurus.eventhandler.risk 等包名称?同样,我正在使用 Ant 脚本,但如果有更简单的方法来完成此类事情,我愿意尝试。谢谢!

最佳答案

如果这两个 jar 包含不同的类/包,那么将它们全部放在应用程序类路径中应该没有问题。因此,不要在另一个包中使用一个 jar 中的类是一个纪律问题。

但是我猜这两个 jar 包含大部分相同的类/方法?使用同一类的不同版本有多种方法:

  • 使用不同的ClassLoader实例。我不会将其定义为“简单”,远非这意味着为一堆讨厌的错误打开大门。 (可以使用 OSGi 等工具来帮助)
  • 将应用程序拆分为两个进程,这些进程在同一 Ant 目标中启动并使用任何方式(CORBA、RMI、REST 等)进行通信。

不过,我不建议使用任何这些方法。 让所有软件包使用相同版本可能会更简单。这样做有什么具体困难吗?

关于java - 部署时如何将 jar 文件包含在不同的包中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12827226/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com