文档章节

WEB-INFO/lib & build path 的jar包问题

王虫虫
 王虫虫
发布于 2016/08/09 17:54
字数 664
阅读 2
收藏 0
点赞 0
评论 0

一、build path&WEB-INFO/lib介绍

build path:可以说是引用; 
WEB-INFO/lib:可以说是固定在一个地方; 
eclipse编译项目的时候是根据build path的,如果不用eclipse来发布项目的话,就会出现找不到jar,tomcat运行项目首先是在它自己的公共lib里找jar,如果找不到的话就会去项目的WEB-INFO/lib目录找,如果找不到就报错。

 

 

build path引用的jar可以引用lib下的jar,也可以引用硬盘上任何可以访问位置上的jar,但是,我推荐把需要的jar都放到lib下,这样一旦发生jar包冲突、缺失的问题,我们可以直接到lib下查看,如果放到其它位置,检查起来则相对麻烦。 

放到lib下也是一个好习惯,引用其它位置的jar【通常某些同学喜欢用myeclipse自动添加对struts、spring、hibernate的支持】,使用这种方式,很容易造成jar包冲突、缺失的问题,尤其是团队协作的情况下,如果你引用了本地硬盘上的某个jar,提交了.classpath文件到svn,别人检出后,就会报错,因为他的硬盘上的同一位置没有这个jar,而如果你放到lib下,再提交,检出后他的lib下是有这个jar的,因为lib是工程的一部分。

 

二、复制项目,报错

因为eclipse把build path的配置写在了项目的.classpath文件中,add Extenrnal jar将jar包引入到工程,.classpath文件中的内容就会被更新,所以不就会报错。 
有时直接把jar复制到项目的WEB-INF/lib文件夹中,然后刷新项目,eclipse都会自动把jar在build path中引用。 
如果jar不是在build path里删除引用,而是自己直接把jar删除或者移到另外一个位置,刷新项目就会出现错误,要去build path里把引用删除。(导入jar包可从此导入)

 

你得首先确定你的是编译环境报错,还是程序报错。 
因为程序中只认识web-inf/lib中的包。但是编译环境不是,如果编译环境在配置中说在某个地方有它要的包,那么如果那个地方没有,也会提示警告信息。
如果要在程序中正常运行,那么不管来自那里,最后包都是放在web-inf/lib中的。 
建议还是先理解下应用程序中包的组成,如果过于依赖于IDE,很多基本的概念会不理解的。

本文转载自:http://blog.csdn.net/lhooouuu/article/details/5785507

共有 人打赏支持
王虫虫
粉丝 0
博文 46
码字总数 31028
作品 0
顺义
程序员
web项目ant打包完整案例

======================================================================================================== web项目ant打包完整案例 ================================================......

银月光海 ⋅ 2016/01/14 ⋅ 0

在myeclipse6.5中导入项目后需要再次导入jar包的问题

我有一个java web项目需要导入到myeclise6.5中。我在myeclipse6.5下新建了一个java web项目,然后将需要导入的src 和webroot中的内容分别导入到新项目中对应的文件夹下,编译总是报错。必须要...

liu奇峰 ⋅ 2012/07/28 ⋅ 2

hibernate学习笔记01--在eclipse环境下搭建hibernate框架

下载并解压 hibernate-distribution-3.3.2.GA.zip 和 slf4j-1.5.8.zip 2. 在 hibernate-distribution-3.3.2.GA 文件夹中找到: hibernate3.jar 3. 在 hibernate-distribution-3.3.2.GA/lib/......

风中海岸 ⋅ 2015/08/29 ⋅ 0

eclipse导入第三方jar包进入web项目的方法

此方式是没有用maven进行构建的项目,纯动态项目。 具体方法: 1、通过Java Build Path导入。 比如我项目上要用servlet-api.jar这个包,我所用的web容器是tomcat,那么如下操作: 项目->右键...

easonjim ⋅ 2016/12/24 ⋅ 0

web项目buildPath与lib的区别

今天新建了个web项目,试了下buildPath来添加jar包,结果运行时提示找不到相关jar包;后来将jar包复制到WEB-INF/lib下,运行成功。然后在网上查了下,原来如此: Build path jars are not a ...

liuhuics10 ⋅ 2015/11/27 ⋅ 0

The server encountered an internal error () that prevented it from fulfilling this request.

这是我今天遇到的一个最棘手的问题,耗费了一下午的时间终于解决了。 不知道为什么,今天做这个web项目时突然遇到下面这样一个错误: type Exception reportmessagedescription The server e...

学习的小猪 ⋅ 2014/05/14 ⋅ 0

手动配置Hibernate的方法

前言:一直习惯用MyEclipse自动生成Hibernate,但是对手动配置一直不甚了解,都不好意思说自己是搞java的。所以赶紧复习了一下手动配置,并记录在此,以便常回来看看! 第一步:搭建环境 在H...

微笑的江豚 ⋅ 2014/08/22 ⋅ 0

java.lang.NoClassDefFoundError:TagSupport

这个错误应该就是没有成功加载tomcat自带的jar包jsp-api.jar。 在网上看到很多网友说要把tomcat/lib下的jsp-api.jar拷贝到项目/WEB_INF/lib下并导入,本人试了一下这是有问题的,这样虽然在启...

街头浪子 ⋅ 2015/12/25 ⋅ 0

ANT的环境搭建和开发

Ant 是apache 工程的一个子工程,是一个基于Java的build工具。Ant 类似于make工具,但没有传统的make工具的缺点。传统的make往往只能限制在某一平台上使用,ant本身用java类实现,要构建的工...

xiahuawuyu ⋅ 2012/08/07 ⋅ 0

Maven项目下update maven后Eclipse报错:java.lang.ClassNotF

工程为maven工程,ContextLoaderListener类位于spring-web-3.1.0.RELEASE.jar包中。检查了maven的pom.xml,依赖引入正常。在工程Maven Dependencies视图中也能看到spring-web-3.1.0.RELEASE....

忆然灬 ⋅ 2015/12/18 ⋅ 2

没有更多内容

加载失败,请刷新页面

加载更多

下一页

MyBatis四大核心概念

本文讲解 MyBatis 四大核心概念(SqlSessionFactoryBuilder、SqlSessionFactory、SqlSession、Mapper)。 MyBatis 作为互联网数据库映射工具界的“上古神器”,训有四大“神兽”,谓之:Sql...

waylau ⋅ 32分钟前 ⋅ 0

以太坊java开发包web3j简介

web3j(org.web3j)是Java版本的以太坊JSON RPC接口协议封装实现,如果需要将你的Java应用或安卓应用接入以太坊,或者希望用java开发一个钱包应用,那么用web3j就对了。 web3j的功能相当完整...

汇智网教程 ⋅ 45分钟前 ⋅ 0

2个线程交替打印100以内的数字

重点提示: 线程的本质上只是一个壳子,真正的逻辑其实在“竞态条件”中。 举个例子,比如本题中的打印,那么在竞态条件中,我只需要一个方法即可; 假如我的需求是2个线程,一个+1,一个-1,...

Germmy ⋅ 58分钟前 ⋅ 0

Springboot2 之 Spring Data Redis 实现消息队列——发布/订阅模式

一般来说,消息队列有两种场景,一种是发布者订阅者模式,一种是生产者消费者模式,这里利用redis消息“发布/订阅”来简单实现订阅者模式。 实现之前先过过 redis 发布订阅的一些基础概念和操...

Simonton ⋅ 今天 ⋅ 0

error:Could not find gradle

一.更新Android Studio后打开Project,报如下错误: Error: Could not find com.android.tools.build:gradle:2.2.1. Searched in the following locations: file:/D:/software/android/andro......

Yao--靠自己 ⋅ 昨天 ⋅ 0

Spring boot 项目打包及引入本地jar包

Spring Boot 项目打包以及引入本地Jar包 [TOC] 上篇文章提到 Maven 项目添加本地jar包的三种方式 ,本篇文章记录下在实际项目中的应用。 spring boot 打包方式 我们知道,传统应用可以将程序...

Os_yxguang ⋅ 昨天 ⋅ 0

常见数据结构(二)-树(二叉树,红黑树,B树)

本文介绍数据结构中几种常见的树:二分查找树,2-3树,红黑树,B树 写在前面 本文所有图片均截图自coursera上普林斯顿的课程《Algorithms, Part I》中的Slides 相关命题的证明可参考《算法(第...

浮躁的码农 ⋅ 昨天 ⋅ 0

android -------- 混淆打包报错 (warning - InnerClass ...)

最近做Android混淆打包遇到一些问题,Android Sdutio 3.1 版本打包的 错误如下: Android studio warning - InnerClass annotations are missing corresponding EnclosingMember annotation......

切切歆语 ⋅ 昨天 ⋅ 0

eclipse酷炫大法之设置主题、皮肤

eclipse酷炫大法 目前两款不错的eclipse 1.系统设置 Window->Preferences->General->Appearance 2.Eclipse Marketplace下载【推荐】 Help->Eclipse Marketplace->搜索‘theme’进行安装 比如......

anlve ⋅ 昨天 ⋅ 0

vim编辑模式、vim命令模式、vim实践

vim编辑模式 编辑模式用来输入或修改文本内容,编辑模式除了Esc外其他键几乎都是输入 如何进入编辑模式 一般模式输入以下按键,均可进入编辑模式,左下角提示 insert(中文为插入) 字样 i ...

蛋黄Yolks ⋅ 昨天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部