maven配置的层级module,子模块重写了依赖模块的类,打包后实际调用还是依赖模块的

发布于 2021-12-03 17:42:10 字数 254 浏览 872 评论 9

这边web工程maven有3个相关module,base(基础框架)、core(业务)、view(调业务方法展现),其中core依赖base,view依赖core。

现在遇到的问题是base的一个类在core进行了重写,调试时没问题,项目打包后生成了base.jar和core.jar,结果工程中引用的是base.jar当中的非重写版。

请问下如何解决或者避开这个问题,或者说“重写依赖包中的类”这个行为本身就不怎么科学


如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(9

想挽留 2021-12-03 19:57:06

3q

你曾走过我的故事 2021-12-03 19:56:58

重新的话,你看原来的包还有没在用,如果没有直接删除就可以了,但是最好还是吧重写的改下包名和类名比较安全,难保以后会用到原来的,这才符合java的编程规范,要尽量避免重名类,哪怕是不同包的

剑心龙吟 2021-12-03 19:56:48

既然是重写,那么packet名和类名都一样,如何指定

秉烛思 2021-12-03 19:56:48

引用来自“Joyzhou”的评论

没太理解你的表述。

在core中重写base的类,那么在使用时应该是引用core中的类,与依赖并没有太大的关系

狼亦尘 2021-12-03 19:56:36

没太理解你的表述。

在core中重写base的类,那么在使用时应该是引用core中的类,与依赖并没有太大的关系

琴流音 2021-12-03 19:55:28

后者。包本身没什么问题,只是打包后没有体现maven中定义的关系

瑾夏年华 2021-12-03 19:51:53

回复
本身这样就是不科学的

海之角 2021-12-03 19:45:46

回复
@ksfzhaohui : 果然,3q

眼泪淡了忧伤 2021-12-03 19:31:32

重写依赖包中的类是什么意思?通过继承的方式重写?还是包名和类都一样的重写?

如果是后者那还是不要的好

另外可以看下本地maven仓库中的包,把里面的包删掉后再重新install看

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文