Maven实战(五)使用maven开发的项目,如何更方便地提取第三方包
2013-07-18 14:30
519 查看
如果你的项目使用maven构建的话,当项目要上线,部署到服务器上去的时候或许会碰见这样的问题。问题就是,服务器上没有maven的环境,也就是说,项目所依赖到的那些仓库(repository)中的jar包你需要单独提取出来上传到服务器中去,解决办法:
前期:在eclipse里安装完成Maven (具体参与前 Maven实战 ),并项目为’Maven webapp项目‘类型,以spring-petclinic 为例
办法1:mvn package
pom.xml :<packaging>是war的话, mvn package 的命令将项目依赖的jar包打到web-inf 下的lib文件夹,如图:
,完成后console会提示war包的位置信息
办法2:mvn assembly:assembly
在${project}/target 文件夹下发现新生成的 {artifactId}-jar-with-dependencies.jar 这个文件,命令执行的过程中,maven会将jar包所依赖的包导出,并且解压(unpackage),一并放在这个{artifactId}-jar-with-dependencies.jar包
注:pom.xml :
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
这个jar-with-dependencies是assembly预先写好的一个,组装描述引用(assembly descriptor)
办法3:按第三方包单独部署
a:修改pom.xml <descriptorRef>jar-with-dependencies</descriptorRef>路径,修改为:<descriptorRef>src/main/assembly/src.xml</descriptorRef>
b:于项目名称/src/main/assembly 下创建 src.xml文件:
<assembly
xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
<id>jar-with-dependencies</id>
<formats>
<format>jar</format>
</formats>
<includeBaseDirectory>false</includeBaseDirectory>
<dependencySets>
<dependencySet>
<unpack>false</unpack>
<scope>runtime</scope>
</dependencySet>
</dependencySets>
<fileSets>
<fileSet>
<directory>${project.build.outputDirectory}</directory>
</fileSet>
</fileSets>
</assembly>
c:再执行mvn assembly:assembly
这样在target文件夹中就会看见新创建出来的{artifactId}-jar-with-dependencies.jar 这个jar包
里面会将项目所依赖的所有第三方包按类型打包在里面
前期:在eclipse里安装完成Maven (具体参与前 Maven实战 ),并项目为’Maven webapp项目‘类型,以spring-petclinic 为例
办法1:mvn package
pom.xml :<packaging>是war的话, mvn package 的命令将项目依赖的jar包打到web-inf 下的lib文件夹,如图:
,完成后console会提示war包的位置信息
办法2:mvn assembly:assembly
在${project}/target 文件夹下发现新生成的 {artifactId}-jar-with-dependencies.jar 这个文件,命令执行的过程中,maven会将jar包所依赖的包导出,并且解压(unpackage),一并放在这个{artifactId}-jar-with-dependencies.jar包
注:pom.xml :
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
这个jar-with-dependencies是assembly预先写好的一个,组装描述引用(assembly descriptor)
办法3:按第三方包单独部署
a:修改pom.xml <descriptorRef>jar-with-dependencies</descriptorRef>路径,修改为:<descriptorRef>src/main/assembly/src.xml</descriptorRef>
b:于项目名称/src/main/assembly 下创建 src.xml文件:
<assembly
xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
<id>jar-with-dependencies</id>
<formats>
<format>jar</format>
</formats>
<includeBaseDirectory>false</includeBaseDirectory>
<dependencySets>
<dependencySet>
<unpack>false</unpack>
<scope>runtime</scope>
</dependencySet>
</dependencySets>
<fileSets>
<fileSet>
<directory>${project.build.outputDirectory}</directory>
</fileSet>
</fileSets>
</assembly>
c:再执行mvn assembly:assembly
这样在target文件夹中就会看见新创建出来的{artifactId}-jar-with-dependencies.jar 这个jar包
里面会将项目所依赖的所有第三方包按类型打包在里面
相关文章推荐
- 使用maven开发的项目,如何更方便地提取第三方包
- 使用maven开发的项目,如何更方便地提取第三方包
- 使用maven开发的项目,如何更方便地提取第三方包
- 使用maven开发的项目,如何更方便地提取第三方包
- 使用maven开发的项目,如何更方便地提取第三方包
- 使用maven开发的项目,如何更方便地提取第三方包
- 如何使用Maven和eclipse构建大数据开发框架项目
- 如何使用Maven和eclipse构建大数据开发框架项目
- 入坑,使用第三方SDK开发mavenJspWeb项目
- 使用Maven开发编译Java项目时如何将所有依赖jar包都打入war包
- 详解idea maven项目如何使用lib下得jar包
- 用maven建一个Hello World项目,maven初使用,maven如何使用
- 解决使用intellij idea开发MAVEN项目在target目录下不存在mapper.xml文件
- 如何使用IntelliJ Idea创建一个分模块Maven+Web项目
- 如何使用 IntelliJ IDEA 2017 配置PHP开发环境 及项目搭建
- 项目开发之使用 maven
- 如何使用IDEA15以及maven构建java web项目
- [android开发中使用的小技巧]如何在项目中导入Android源码
- [WPF+ArcEngine]如何在WPF项目中使用ArcEngine的控件做开发
- Intellij IDEA如何使用Maven Tomcat Plugin运行web项目