Maven 打zip等压缩包
Maven 打zip等压缩包
zj_oschina 发表于4年前
Maven 打zip等压缩包
  • 发表于 4年前
  • 阅读 7867
  • 收藏 2
  • 点赞 0
  • 评论 2

移动开发云端新模式探索实践 >>>   

使用Maven Assembly plugin

1、在pom文件中添加如下代码

<plugin>
	<groupId>org.apache.maven.plugins</groupId>
	<artifactId>maven-assembly-plugin</artifactId>
	<version>2.4</version>
	<configuration>
		<descriptors>
			<descriptor>assembly.xml</descriptor>
		</descriptors>
	</configuration>
	<executions>
		<!-- 当执行mvn package时才会打包 -->
		<execution>
			<id>make-assembly</id>
			<phase>package</phase>
			<goals>
				<goal>single</goal>
			</goals>
		</execution>
	</executions>
</plugin>

2、编写assembly.xml文件,存放至根目录(上面的descriptor可指定存放位置)

<assembly>
	<id>bin</id>
	<formats>
		<!-- zip,tar,tar.gz,tar.bz2,jar,dir,war -->
		<format>zip</format>
	</formats>
	<dependencySets>
		<!-- 依赖包的输出路径 -->
		<dependencySet>
			<outputDirectory>/lib</outputDirectory>
		</dependencySet>
	</dependencySets>
	<!-- 需要打包的文件集 -->
	<fileSets>
		<fileSet>
			<directory>prod.data</directory>
			<outputDirectory>/prod.data</outputDirectory>
		</fileSet>
		<fileSet>
			<includes>
				<include>build.xml</include>
				<include>build.properties</include>
			</includes>
		</fileSet>
	</fileSets>
</assembly>

3、执行mvn assembly:single即可打成压缩包

     执行mvn package也会打出一个压缩包,因为在pom.xml中已经将asssembly与package绑定在一起(但是会把打出的jar包一起copy到压缩包的lib目录,有点别扭,留着以后看看有没解决方案)

  • 打赏
  • 点赞
  • 收藏
  • 分享
共有 人打赏支持
粉丝 1
博文 52
码字总数 11831
评论 (2)
程进凯
<dependencySet>
<outputDirectory>/lib</outputDirectory>
<useProjectArtifact>false</useProjectArtifact>
<scope>runtime</scope>
</dependencySet>
可以解决那个遗留问题。
zj_oschina

引用来自“程进凯”的评论

<dependencySet>
<outputDirectory>/lib</outputDirectory>
<useProjectArtifact>false</useProjectArtifact>
<scope>runtime</scope>
</dependencySet>
可以解决那个遗留问题。

下周试试
×
zj_oschina
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: