该博文内容经参看网上其他资料归纳所成,并注明出处:
问题一:myeclipse中Web App Libraries无法自动识别lib下的jar包(http://blog.csdn.net/tiancai1202000/article/details/49178721)
myeclipse,lib中的jar包无法自动加载到Web App Libraries中,即使添加了Web App Libraries这个libraries,jar包还是如法加入。
解决办法:
在.project文件中,修改<natures>使用以下内容覆盖原来的nature
<nature>org.eclipse.jem.workbench.JavaEMFNature</nature>
<nature>com.genuitec.eclipse.ast.deploy.core.deploymentnature</nature>
<nature>com.genuitec.eclipse.j2eedt.core.webnature</nature>
<nature>org.eclipse.jdt.core.javanature</nature>
<nature>org.eclipse.wst.jsdt.core.jsNature</nature>
<nature>org.eclipse.wst.common.project.facet.core.nature</nature>
<nature>org.eclipse.wst.common.modulecore.ModuleCoreNature</nature>
然后,在.settings文件夹中,加入 org.eclipse.wst.common.component 文件,内容:
<?xml version="1.0" encoding="UTF-8"?>
<project-modules id="moduleCoreId" project-version="1.5.0">
<wb-module deploy-name="工程名">
<wb-resource deploy-path="/" source-path="/WebRoot"/>
<wb-resource deploy-path="/WEB-INF/classes" source-path="/src"/>
<property name="context-root" value="/工程名"/>
<property name="Java-output-path" value="/工程名/WebRoot/WEB-INF/classes"/>
</wb-module>
</project-modules>
问题二:jar包的存放集合介绍 JRE System Library,Referenced Libraries,Web App Libraries
参考一:https://segmentfault.com/q/1010000006146055
1.web app libararies里面的jar包是开发web app必备的一些jar包,系统指定的。
2.referenced libraries里面的jar包是系统以来的库函数的一些jar包。
参考二: http://www.cnblogs.com/dougest/p/6593667.html
JRE System Library,Referenced Libraries,Web App Libraries 这三个都是jar包的存放集合
JRE System Library主要存放J2SE的标准jar,一般不需要调整。
Referenced Libraries是存放第三方的jar包,也就是自己导入的jar包。在项目属性的Java Build Path中的Libraries中配置。本人理解,
这里导入和配置jar包,都是为了让web工程能够在eclipse开发环境可以正常编译,不报错而已。。如果该web工程利用eclipse生成war包,
是不会导出其jar包到WEB-INF/lib文件夹下的。
Web App Libraries的主要作用是让eclipse导出war包的时候,会把其目录下的所有jar或者项目中的工程引用都导出到WEB-INF/lib文件
夹下。Web App Libraries中的jar包在eclipse中项目属性的Java EE Module Dependencies配置的。如果你勾上了,或者添加了外部jar包,都会在WEB-INF/lib文件夹下生成。当然,如果你直接在WEB-INF/lib文件夹下,copy一个jar进入,刷新一下,Web App Libraries也会自动增加一个jar的引用。简单说,Java EE Module Dependencies的配置只针对Web App Libraries的。
参考三:http://blog.sina.com.cn/s/blog_7ffb8dd501013xfz.html
一、在Myeclipse中新建项目一般会有下列四种libraries:
JRE System Library , java EE 6 Libraries , Referenced Libraries,Web App Libraries
二、各种libraries含义
JRE System Library: 指Java SE 的常用库文件集合,建立普通的Java项目均会使用;
java EE 6 Libraries: 指Java EE的常用库文件的集合,建立Web项目会用到这个库集合与Java SE的库文件集合;
Referenced Libraries: 指你项目中所使用的第三方库文件集合.如果你把项目所需要的其他JAR包直接加在 项 目->属性->Java Build Path -> Libraries 中的时候,MyEclipse 会自动将这些JAR包归类到一个集合中, 并取名为 Referenced Libraries , 显示在项目中.
问: 经常在SSH中出现jar包冲突 不知是Referenced Libraries 中的jar文件冲突 还是 WebRoot /web-inf/ lib 下jar文件冲突???
解答:编译期冲突是由Referenced Libraries中jar包冲突引起;运行期冲突是由 WebRoot /web-inf/ lib 下jar文件冲突引起的。首先 Referenced Libraries可以是引用 WebRoot /web-inf/ lib下的jar包,也可以是其他从别的地方复制过来的第三方jar包。 Referenced Libraries是编译环境下使用的JAR包, 所谓编译环境下使用的JAR包, 就是说你在Eclipse中进行源文件的编写的时候, 所需要引用到的类都从Referenced Libraries这个集合中的JAR包中拿; WebRoot /web-inf/lib中的JAR包是运行时环境下使用的JAR包, 所谓运行时环境下使用的JAR包,就是说你在运行你的项目的时候所需要使用的JAR包的集合; 注意区分两种环境:编译环境与运行环境.
Web App Libraries:This container dynamically manages classpath entries for types in the WEB-INF/lib and WEB-INF/classes directories. 相信有点英语基础的的人都能看的懂。
关于web项目没有看到Web App Libraries,可以通过右键项目/built path/Configure built path/点击libraries标签
---------------------
作者:aspu O_O
来源:CSDN
原文:https://blog.csdn.net/dyr_1203/article/details/76513070
版权声明:本文为博主原创文章,转载请附上博文链接!