【JavaEE】引用的jar包为什么必须放到lib目录下

探讨了在软件工程项目中,为什么外部jar包如Hibernate等需要放置在WebRoot下的lib目录,以确保跨平台的兼容性和项目的规范性。

文章来源:

在跑书上带的源码的时候出现Error:

java.lang.NoClassDefFoundError: org.hibernate.cfg.Configuration

解决办法:

将Hibernate相关jar包拷贝到lib目录下即可

  上面的问题引发了我的思考,为什么jar包非要放到lib目录下?当然这个jar包得加个定语限制一下,就是引用的外部jar包,像tomcat、JRE相关jar包这些都是我们和Eclipse整合过了,所以我把它们看成内部jar包,而Hibernate这类的,没有和Eclipse整合(MyEclipse有整合,但我用的是Eclipse),我把它们看成外部jar包。
  因为Tomcat和JRE相关的路径都是在Eclipse中设置过的,所以那些jar包的位置也就固定了。而外部jar包就不同了,我的jar包有可能引用自D盘,你的jar包有可能引用自E盘,他的jar包有可能引用自F盘,那么我这个Web工程一但换个电脑,就跑不起来了。为了解决这个问题,就要制定一个规范,jar包都放到一个大家都公认的地方,那个地方就是WebRoot下的lib.
  虽然lib下放jar包大家都知道,但是并非所有人都照着做,《人月神话》告诉我们,软件工程难免陷入“焦油坑”,究其原因一方面就是规范的缺乏。
  所有我常说,生活不止代码。有时候不是说这个项目能跑起来就行,而是要符合规范的跑起来。假如有一天,大家都这样的话,那么我想软件工程的“银弹”是有的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值