文档章节

Maven管理的jar没有发布到WEB-INF/lib下的解决方案

蔡少东
 蔡少东
发布于 2014/11/21 09:08
字数 296
阅读 337
收藏 8

标准web工程在eclipse中利用m2eclipse插件添加依赖管理后,在部署过程中没有将依赖的jar包自动拷贝到/WEB-INF/lib中。

参考了一些朋友的做法手动执行

[java] view plaincopy

  1. mvn dependency:copy-dependencies -DoutputDirectory=src/main/webapp/WEB-INF/lib  -DincludeScope=runtime   

命令将jar包拷贝到/WEB-INF/lib目录下。
这种做法固然可以,但是也会带来一些不便。
1、需要手动执行命令。
2、不能时时更新。

以下列出网上查找到的解决方法,m2eclipse plugin方式已验证通过。
通过验证eclipse版本:eclipse-jee-helios-SR2-win32
m2eclipse插件地址:http://m2eclipse.sonatype.org/sites/m2e
标准web工程通过m2eclipse添加依赖管理步骤:
1、“Maven ” –> “Enable dependency Management“

2、Web Deployment Assembly中添加maven dependencies

步骤如下图:

工程 -> 右键 -> preferences

 

 

 

 


.classpath文件中会有修改

   

[xhtml] view plaincopy

  1. <classpathentry kind="con" path="org.maven.ide.eclipse.MAVEN2_CLASSPATH_CONTAINER"/>  


[xhtml] view plaincopy

  1. <classpathentry kind="con" path="org.maven.ide.eclipse.MAVEN2_CLASSPATH_CONTAINER">  

  2.         <attributes>  

  3.             <attribute name="org.eclipse.jst.component.dependency" value="/WEB-INF/lib"/>  

  4.         </attributes>  

  5.     </classpathentry>  


(执行“Maven ” –> “Update Project Configuration “未生效,故手动添加。必须deploy时候才会拷贝jar包到lib目录下,而非在更新maven依赖时候拷贝jar包。 )

© 著作权归作者所有

共有 人打赏支持
蔡少东
粉丝 20
博文 76
码字总数 75416
作品 0
东莞
程序员
maven多web合并项目

实际情况:基于开源作者开源的web项目,扩展开发自己的业务功能,又不想跟原项目混在一起开发,即要实现开源web项目与自己的扩展web项目合并部署且自己的web项目依赖开源的web项目,经网上查...

zkool
2016/11/23
127
0
Eclipse项目部署遇到的问题

问题一:现象项目里部署没有jar包 前段时间在做项目的时候,用eclipse构建的maven工程部署到tomcat下面去时,发现tomcat的web-inf下面的lib目录是空的,当时弄了好长时间,最后实在没辙了,就...

不知道起什么名字
2016/09/07
9
0
eclipse部署时候不拷jar包到web-inf下面的lib目录解决办法

前段时间在做项目的时候,用eclipse构建的maven工程部署到tomcat下面去时,发现tomcat的web-inf下面的lib目录是空的, 当时弄了好长时间,最后实在没辙了,就手动把所有的依赖拷到web-inf的l...

china008
2014/10/15
0
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
327
2
Maven War 插件Classes文件夹打为Jar包的Bug与解决方法

有时候我们需要利用Maven Resource管理的过滤功能将某些文件中的${XXX}变量在构建时进行动态替换,但同时我们不希望这些文件被加入到jar包中,因为它们是在jar包外或者只是部署时有用,这个需...

bluishglc
2017/09/07
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

设计模式:简单工厂模式(静态共产方法模式)

简单工厂的构成包括三个角色: 1)抽象产品类 2)具体产品类(继承抽闲产品类) 3)工厂类(生产具体产品) 具体代码实现 1、抽象产品类 /** * 抽象类 */public abstract class Car ...

京一
6分钟前
0
0
Lombok使用

1 介绍 Lombok是一个简单的Java库,改工具可以通过注解自动地提供一些方法,简化开发。比如编写POJO时需要为每个属性提供getter()方法和setter()方法,这就可以使用Lombok实现。 2 配置 Lomb...

SuperHeroes
14分钟前
0
0
Confluence 6 删除垃圾内容

属性(profile)垃圾 属性垃圾的定义为,一个垃圾用户在 Confluence 创建了用户,但是这个用户在自己的属性页面中添加了垃圾 URL。 如果你有很多垃圾用户在你的系统中创建了属性,你可以使用...

honeymose
16分钟前
0
0
java虚拟机之内存模型

1. 概述 对于从事 C、C++ 程序开发的人员来说,在内存管理领域,他们既是拥有最高权力的「皇帝」又是从事基础工作的「劳动人民」 --- 既拥有每个对象的「所有权」,又担负着每一个对象生命开...

firepation
18分钟前
0
0
解决linux的-bash: ./xx: Permission denied

解决linux的-bash: ./xx: Permission denied 在linux下执行sh文件时提示下面信息: -bash: ./xx.sh: Permission denied解决:chmod 777 xx.sh 1 2 3 4 Linux chmod +755和chmod +777 ......

DemonsI
29分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部