myeclipse工程中library 和 web-inf下lib的区别

eclipse工程下的library是用来编译里面的src中java文件的
实际发布到tomcat时,仅仅只复制了WEB-INF/lib里面的jar包,所以出现eclipse可以正常编译但tomcat运行是找不到类,
如果你是用的eclipse j2ee IDE,你去WorkSpace\.metadata\.plugins\**.server.core\wtpwebapps找到运行时发布的工程就可以明白了
 

 refernced Libraries下面的jar包是Eclipse提供的功能而已,就好像你告诉它你的项目用到哪些包,然后它启动的时候便会加载,这样你写程序的时候它就会有类提示或错误提示。

 

    WEB-INF/lib 下面是给服务器看的,服务器每次启动会把你的WEB-INF/lib下面的jar加载进来,服务器根本不认识你的refernced Libraries那些东西。

 

    而每次我们在我们所做的项目中每次建立我们建立动态网站(Eclipse开发) 结构目录是这样的,当我们在WEB-INF/lib的文件夹下加入jar包时,在Libraries的Web App Libraries文件夹下会自动为我们复制相应的jar包到其目录下。

 
 
图一、加入jar包之前                                          图二、加入jar包后