hadoop 的jar包位置置放在WEB-INF/lib下和通过build path导入的区别是什么

&学习笔记&jar包置放在WEB-INF/lib下和通过build path导入的区别是什么 - CSDN博客
&学习笔记&jar包置放在WEB-INF/lib下和通过build path导入的区别是什么
纯java项目使用的本地自己的JRE,那么classLoader在加载jar和class时候是分开的,对于我们自己编写的class,会在APP_HOME/bin下。导入的jar包或者user&library的配置信息会出现在APP_HOME/.classpath文件中,ClassLoader会很智能去加载这些classes和jar。
而对于java&web项目就不一样了,虽然eclipse的workspace中仍有.classpath文件,但即使你导入的了自己定义的user&library,它也不会出现在.classpath中,这就是问题的关键。
对于java&web项目,它最终不是通过本地的JRE去运行,而是部署到web&服务器,如Tomcat、Weblogic、WebSphere等,这些服务器都实现了自身的类加载器。
eclipse引用library&是为了编译代码生成WEB-INF/classes里面的class文件使用,使用eclipse&j2ee&IDE时,会将WEB-INF/lib中所有的lib自动加入到library中。
eclipse工程下的library是用来编译里面的src中java文件的,实际发布到tomcat时,仅仅只复制了WEB-INF/lib里面的jar包,所以出现eclipse可以正常编译但tomcat运行是找不到类。
本文已收录于以下专栏:
相关文章推荐
通俗的讲是和classLoader有关,对于纯java项目,它不存在WEB-INF目录,所以在引入jar包的时候一般都是通过buildpath直接引入,例如我要引入Spring3X,那么先定义一个us...
前言:这段短文是根据工作实践结合自己的理解写的,有不对的地方恳请指出,QQ:.
在eclips里在工程名上右键-&build path-&contigure bud path-&j...
(下面的解决问题的内容是我从网上查到的,具体是哪位好心的大虾的,由于时间长我给忘了,所以不能指明出处,非常抱歉。)
我通过Eclipse的 User Libranry 将jar导入 Eclipse里面...
最近工作中,需要打包一个java工程,最让人头疼的是java工程需要依赖于第三方的jar。用eclipse自带的导出jar的方式已经不能满足实际的需要。需要在eclipse上安装fatjar来解决ja...
纯java项目使用的本地自己的JRE,那么classLoader在加载jar和class时候是分开的,对于我们自己编写的class,会在APP_HOME/bin下。
导入的jar包或者use...
问题: 1、web架包找不到 2、maven项目转变web项目通过 Deployment Assembly把架包添加到WEB-INF/lib引起的架包冲突
  通俗的讲是和classLoader有关...
本文转载自点击打开链接
jar包直接拷贝到WEB-INF/lib下和以userLibrary形式引入的区别?
jar包放置在WEB-INF/lib下和通过build path导...
一、build path&WEB-INFO/lib介绍
build path:可以说是引用;
WEB-INFO/lib:可以说是固定在一个地方;
eclipse编译项目的时候是根据build ...
eclipse部署时候不拷jar包到web-inf下面的lib目录解决办法
标签: eclipse部署Tomcat部署缺包
15:41 483人阅读 评论(0) 收藏...
原文:http://blog.csdn.net/yirentianran/article/details/6429240
标准web工程在eclipse中利用m2eclips...
他的最新文章
讲师:宋宝华
讲师:何宇健
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)maven如何将项目引用的所有jar包复制到lib文件夹内 - 为程序员服务
为程序员服务
maven如何将项目引用的所有jar包复制到lib文件夹内
Maven的非web项目在执行时需要引用很多jar包,这时候通常的做法是将这些jar包统一放到lib目录中,maven的dependency插件可以帮我们做这件事情。
我们需要在pom文件的build节点的plugins节点内添加一个plugin,plugin内容如下:
&groupId&org.apache.maven.plugins&/groupId&
&artifactId&maven-dependency-plugin&/artifactId&
&executions&
&execution&
&id&copy-dependencies&/id&
&phase&prepare-package&/phase&
&goal&copy-dependencies&/goal&
&configuration&
&outputDirectory&${project.build.directory}/lib&/outputDirectory&
&overWriteReleases&false&/overWriteReleases&
&overWriteSnapshots&false&/overWriteSnapshots&
&overWriteIfNewer&true&/overWriteIfNewer&
&/configuration&
&/execution&
&/executions&
&groupId&org.apache.maven.plugins&/groupId&
&artifactId&maven-jar-plugin&/artifactId&
&configuration&
&manifest&
&addClasspath&true&/addClasspath&
&classpathPrefix&lib/&/classpathPrefix&
&mainClass&theMainClass&/mainClass&
&/manifest&
&/archive&
&/configuration&
上面配置中我们使用了maven-dependency-plugin插件,然后执行了(execution节点)copy-dependencies操作。我们指定的输出目录是:${project.build.directory}/lib,这里的${project.build.directory}就是我们通常看到的target目录,也就是要把jar复制到target目录下的lib目录下。
推荐阅读:
相关聚客文章当前位置: →
→ javaweb项目下的lib和buildpath中jar包有关问题解惑
javaweb项目下的lib和buildpath中jar包有关问题解惑
& 作者:佚名 & 来源: 互联网 & 热度:
&收藏到→_→:
摘要: java web项目下的lib和build path 中jar包问题解惑 一、build path&WEB-INFO/lib介绍 build path:可以说是引用; WEB-INF...
"javaweb项目下的lib和buildpath中jar包有关问题解惑"::
java web项目下的lib和build path 中jar包问题解惑
一、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.马开东/lhooouuu/article/details/5785507
搜索此文相关文章:此文来自: 马开东博客
网址: 站长QQ
上一篇:没有了
javaweb项目下的lib和buildpath中jar包有关问题解惑_Web前端相关文章
Web前端_总排行榜
Web前端_最新
Web前端_月排行榜
Web前端_周排行榜
Web前端_日排行榜}

我要回帖

更多关于 maven下载jar包位置 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信