gpt4 book ai didi

java - 内部依赖类限定名称冲突

转载 作者:行者123 更新时间:2023-12-02 12:22:07 25 4
gpt4 key购买 nike

我的 Gradle 项目中有两个依赖库:

  • 旧:完整的实用程序库
  • 新:仅数据库库(固定库)

两者都拥有相同的数据库连接类,包括包,例如:net.mycompany.common.dbsq.DBConnector()

我需要的是确保使用新的数据库连接类,但保留旧的(可以没有数据库类)作为依赖项,因为其余所需的实用程序在新的中不可用。

是否有可能仅排除/包含特定的类或依赖包?或者确保“覆盖”相同命名的类?不幸的是,这不是传递依赖的问题,但两者都存在名称冲突的数据库连接类。而且我不能对依赖项的内容产生任何影响。

通过将两者指定为编译依赖项,IDE (Idea) 使用 NEW 中的类,但在 weblogic 服务器中运行 .war 使用 OLD 中的数据库连接类。

有什么想法吗?我可以给出更具体的描述,但这是一个非常普遍的问题。

最佳答案

如果您包含两个库,则您将完整地包含它们。

我只能想到两种方法:

  1. 删除旧的依赖项并检查哪些新库包含您所依赖的类。通常,当一个项目将基于一个完整 jar 的打包替换为基于更精细的 jar 的打包时,您只需添加所有精细的库就可以拥有完整的类集。如果您告诉我们您的图书馆是哪个,我们会更容易回答更具体的问题。
  2. 采用旧库并仅使用您需要的类重新打包它。灰心丧气,容易导致问题。

最好的选择是 1。

关于java - 内部依赖类限定名称冲突,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45693727/

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