使用maven的assembly插件实现自定义打包输出

当项目中对打包有一些特殊需求时,比如想打包成zip或tar.gz格式的包时,可以使用maven-assembly-plugin插件来实现自定义打包输出路径及一系列特定需求。

本文将会对该插件的常见使用方式及各标签作一些详细的介绍,更为细致的需求请自行访问该插件官网:http://maven.apache.org/plugins/maven-assembly-plugin/assembly.html

1、pom文件中配置该插件,如下图:

            
                
                    
                        
                        org.apache.maven.plugins
                        maven-assembly-plugin
                        2.6
                        
                        
                            
                                
                                build-bin
                                
                                package
                                
                                    
                                    single
                                
                                
                                    gnu
                                    
                                        
                                        assembly.xml
                                    
                                    target
                                    
                                    platform-notify
                                    
                                    false
                                
                            
                        
                    
                
            

2、描述文件的详细信息如下图,完整版:


	
	build-bin
	
	true
	
	
		dir
		tar.gz
	

	
	
		
			
			false
			
			.
			
			
				uyun.soft:util-shell:tar.gz
			
			
			true
			
			runtime
			
			0755
		
	

	
		
		
			
			../core/target/classes
			
			resources/notify/spring-conf
			
			
				application.yaml
				spring-context.xml
				spring-dubbo.xml
			
			
			0755
		
		
			../core/target/classes/database
			resources/notify/database
			
				*.sql
			
			0755
		
		
			../core/target
			resources/notify/lib
			
				**/*.jar
			
			0755
		
		
			..
			resources/notify/
			unix
			
                module.yaml
            
			0755
		
		
			../conf/disconf
			resources/notify/conf
			
				platform-notify.properties
			
			0755
		
		
			resources
			resources/notify/bin
			
				test_send.sh
				platform-notify.sh
				set-env.sh
			
			
			unix
			0755
		
		
			resources
			.
			
				install.sh
			
			unix
			0755
		
	

当项目中存在多个微服务进程模块时,可分别配置该xml统一每个进程的打包方式,方便使用自动化工具来进行统一的管理和部署工作。

你可能感兴趣的:(maven)