JRE System Library、Referenced Libraries、Web App Libraries的含义
- JRE System Library、Referenced Libraries、Web App Libraries 这三个都是jar包的存放集合。
- JRE System Library:指Java SE 的常用库文件集合,建立普通的Java项目均会使用。
- Referenced Libraries:指你项目中所使用的第三方库文件集合,如果你把项目所需要的其他JAR包直接加在,项目 --> 属性 --> Java Build Path --> Libraries 中的时候,Eclipse 会自动将这些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/ lib下的jar包,也可以是其他从别的地方复制过来的第三方jar包。Referenced Libraries 是编译环境下使用的JAR包,所谓编译环境下使用的JAR包,就是说你在Eclipse中进行源文件的编写的时候,所需要引用到的类都 Referenced Libraries 这个集合中的JAR包中拿。
- WebRoot/WEB-INF/lib 中的JAR包是运行时环境下使用的JAR包,所谓运行时环境下使用的JAR包,就是说你在运行你的项目的时候所需要使用的JAR包的集合。
- 注意区分两种环境:编译环境与运行环境。
- Web App Libraries: 关于web项目没有看到Web App Libraries,可以通过右键项目 --> built path --> Configure built path --> 点击libraries标签 --> 选择右边的 Add Library… 按钮 ,在弹出的窗口中选择 Web App Libraries 添加即可。
- 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。
- 在项目发布的时候 Referenced Libraries 下面的jar包不会被打包。
- 补刀1:
- EJB = Enterprise Java Bean
- 实体Bean --> 类似于Hibernate中的持久化对象
- 会话Bean --> 类似于Service
- 消息驱动Bean --> 发送消息
- EAR Libraries:开发EJB工程所需的库包。
- EAR Libraries:是开发JavaEE服务器端组件模型所需要的库包。但是现在一般都用轻量化的框架实现模块化。EJB太笨重了,2003年的淘宝就是采用EJB开发,现在已经很少见了。
- 开发EJB工程所需的库包,像我们常用zip或者rar一样,也是可以解压出来的。
- 顺便说下:
- war包:是做好一个web应用后,通常是网站,打成包部署到容器中。
- jar包:通常是开发时要引用通用类,打成包便于存放管理。
- ear包:企业级应用,通常是EJB打成ear包。
- 所有的包都是用jar打的,只不过目标文件的扩展名不一样。
- EJB = Enterprise Java Bean
- 补刀2:
- cdn全称是Content Delivery Network,主要用于加速静态资源,如网站上面上传图片、媒体、以及引入的一些js和css等文件。它的加速依靠各个网络节点,例如100台CDN服务器分布在全国,从上海访问,会从最近的节点返回资源,这是核心。
我的博客园地址:https://www.cnblogs.com/chenmingjun
我的CSDN地址:https://blog.csdn.net/u012990179
我的蚂蚁笔记博客地址:https://blog.leanote.com/chenmingjun
Copyright ©2018-2019 黑泽明军
【转载文章务必保留出处和署名,谢谢!】
JRE System Library、Referenced Libraries、Web App Libraries的含义的更多相关文章
- web App libraries跟referenced libraries的一些问题
该博文内容经参看网上其他资料归纳所成,并注明出处: 问题一:myeclipse中Web App Libraries无法自动识别lib下的jar包(http://blog.csdn.net/tianca ...
- eclipse中jre system library ,web app libraries,referenced libraries,user libraries
在eclipse ide中进行开发时,为了方面jar的管理用了user libraries,但是遇到了一些问题,对于其中jre system library ,web app libraries,re ...
- MyEclipse中关于JRE System Library、Web App Libraries的疑惑
简要说明一下:其实,这三个都是jar包的存放集合. 1.JRE System Library主要存放J2SE的标准jar,一般不需要调整. 2.Referenced Libraries是存放第三方的j ...
- Eclipse中关于JRE System Library、Web App Libraries的疑惑
当我们在Eclipse中建立java的web工程时,会产生JRE System Library和Referenced Libraries,Web App Libraries不生成,下面会 简要说明一下 ...
- Eclipse项目中web app libraries和 Referenced Libraries区别
Referenced Libraries是编译环境下使用的JAR包,所谓编译环境下使用的JAR包, 就是说你在Eclipse中进行源文件的编写的时候,所需要引用到的类都从Referenced Li ...
- JRE System Library 与Java EE Libraries的区别
JRE System Library是只要做java开发都需要的完整的.标准的库. Java EE5 Libraries只是java三个方向中做java EE所需要的库.如果做Web方面的开发的话就 ...
- ] 解决myeclipse中新建javaweb工程,无法使用Web App Libraries问题
] 解决myeclipse中新建javaweb工程,无法使用Web App Libraries问题 标签: myeclipsejavawebWeb App Libraries 2013-10-16 1 ...
- 项目红色感叹号eclipse因Web App Libraries中的jar包missing导致项目红色感叹号
症状: 如题 分析: 修改.更换或者删除了WEB-INF/lib中的jar包 解决方案: 右击项目>build path>Libraries 直接remove Web App Librar ...
- eclipse 导入下载或拷贝的java Web项目时报错 ,或者是报错Unbound classpath container: 'JRE System Library
在Problems里报错Description Resource Path Location Type Unbound classpath container: 'JRE System Library ...
随机推荐
- 07_Hibernate多事务并发运行时并发问题检索方式
什么是事务? 事务(Transaction)是并发控制的单位,是用户定义的一个操作序列.这些操作要么都做,要么都不做,是一个不可分割的工作单位. 事务就是逻辑上的一组操作,要么全都成功,要么全都失败 ...
- WPF+MVVM+EF示例1
实现了那些功能,先看看效果图: 项目工程目录: 接下来开始具体的步骤: 第一步:在VS中新建工程 第二步:使用NuGet 安装EntityFramework 第三步:使用NuGet 安装EntityF ...
- C++面向对象高级编程(下)-Geekband
11, 组合和继承 一, Composition 复合 has-a的关系 简单来讲, 就是: class A{ classB b1; }; 这里讲到Adapter设计模式: templa ...
- pymysql 使用
适用环境 python版本 >=2.6或3.3 mysql版本>=4.1 安装 可以使用pip安装也可以手动下载安装. 使用pip安装,在命令行执行如下命令: 1 pip install ...
- sql草稿
参考:MySQL 内连接.外连接.左连接.右连接.全连接 SELECT count(*) FROM `t_product_base` select m_name from t_medicinal_in ...
- 同一服务器不同域名session共享
Tomcat下,不同的二级域名之间或根域与子域之间,Session默认是不共享的,因为Cookie名称为JSESSIONID的Cookie根域是默认是没设置 的,访问不同的二级域名,其Cookie就重 ...
- 阿里云“网红"运维工程师白金:做一个平凡的圆梦人
他是阿里云的一位 P8 运维专家,却很有野心得给自己取花名“辟拾(P10)”:他没有华丽的履历,仅凭着 26 年的热爱与坚持,一步一个脚印踏出了属于自己的技术逆袭之路:他爱好清奇,练就了能在 20 秒 ...
- 程序员总数3W+,阿里巴巴首次公开2018代码数据报告
- Python-异常处理 使用selenium库自动爬取数据
异常处理 处理程序的报错 语法 捕捉万能异常: try: print(a) except Exception as e: print("你的代码有问题") print(" ...
- Python,anaconda及pycharm安装过程笔记
1.Python Python有2.X和3.X版本,可以在Windows系统下共存.方法为:Windows下Python多版本共存 可参考: Python及pycharm安装 安装Python后可在c ...