java项目中哪里添加依赖_Java项目依赖项

让我们假设我有一个名为A的动态Web项目.这个项目A依赖于另一个名为B的Project,它使用了一个Dom4J jar.如果B将此jar添加为依赖项并在项目A的构建路径中添加项目B,并且在项目B中有一个抛出Dom4J异常的方法,如何避免将Dom4J添加为项目A中的依赖项,这样我就不会将两个项目中的Dom4J作为依赖项?

解决方法:

如果您的代码直接调用声明抛出Dom4jException的方法,则需要在构建类路径中使用Dom4j.这只是方法签名的一部分,编译器必须能够解析它.

如果这是一个问题(即你想隐藏Dom4j作为项目B的“实现细节”),那么你需要确保Project B的面向公众的API都没有公开任何Dom4j类.例如,您可以将throws子句更改为扩展为适当的公共异常或包装异常.

请注意,仅当项目A访问项目B中直接引用Dom4J的类时,才会出现此问题.对于您没有直接编译的内部类,这不是问题.当然,您仍然需要在运行时使用Dom4J.

最后,在Maven中,默认情况下,您还可以在编译时类路径中获得所有可传递的编译时依赖项.所以Dom4J已经存在,你不应该得到构建错误.但是,如果您要使用Dom4J(例如通过捕获异常),则直接明确地包含它是一种好习惯.

标签:java

来源: https://codeday.me/bug/20190623/1271474.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值