Maven常用配置

本文介绍了使用Maven作为构建工具的常用配置,包括指定jdk版本,jar包和依赖分开打包,多环境打包,配置私服,发布到私服等配置。

主要内容:

  • 1.指定jdk版本
  • 2.打包时jar和依赖分开打包
  • 3.源码打包
  • 4.多环境打包
  • 5.配置私服地址
  • 6.打包到私服

1.指定jdk版本

在项目的pom.xml 中加入


    org.apache.maven.plugins
    maven-compiler-plugin
    
        1.7
        1.7
        1.7
    

2.打包时jar和依赖分开打包

用过SpringBoot的都知道执行运行package就可以打一个可执行的jar,但是如果我们仅仅只改了很少的代码每次都打一个jar,而且这个jar里包含了很多依赖,每次上传到服务器都会很慢。能不能将依赖和jar分开了,这样每次只需要更新jar即可。

如果是SpringBoot应用先屏蔽SpringBoot的打包插件



在项目的pom.xml 中加入




  org.apache.maven.plugins
  maven-jar-plugin
  
    
      
        true
        lib/
        
        me.jinkun.IblogApplication
      
    
  



  org.apache.maven.plugins
  maven-dependency-plugin
  
    
      copy
      package
      
        copy-dependencies
      
      
        ${project.build.directory}/lib
        false
        false
        true
        
        
        
        
        
        runtime
      
    
  

运行

mvn clean package -DskipTests
lib & jar 这里jar非常小

3.源码打包

但我们写的jar给别人用时,有时需要源码给别人,打成jar更方便
在项目的pom.xml里加入



  org.apache.maven.plugins
  maven-source-plugin
  
    
      attach-sources
      
        jar
      
    
  

源码包

4.多环境打包

1、在项目resources里新建多环境文件夹


新建dev & prod

2、在pom.xml里配置多环境



  
  
    dev
    
      true
    
    
      dev
    
  
  
  
    prod
    
      prod
    
  

默认使用开发环境dev
3、配置根据指定环境打包配置文件


  
    src/main/java
    
      
      **/**.class
      **/**.xml
    
    false
  
  
    src/main/resources
    
    
      prod/*
      dev/*
    
    true
  
  
  
    src/main/resources/${package.environment}
  

按照上面的打包方式打包即可

mvn clean package -DskipTests -Pprod

其中-Pdev -Pprod 可以指定环境,-DskipTests跳过测试

jar包里的目录结构

如果想要修改jar的名字
可以配置finalName指定特殊的名字


  org.apache.maven.plugins
  maven-jar-plugin
  
    
      
        true
        lib/
        me.jinkun.IblogApplication
      
    
    
    ${artifactId}-${version}-${package.environment}
  

5.配置私服地址

修改setting.xml的配置



    D:\MavenRepository
    
        
        
            nexus
            admin
            admin123
        

        
            maven-public
            admin
            admin123
        
    
    
        
        
            maven-public
            *
            maven-public
            http://xxx.xxx.xxx.xxx:7050/repository/maven-public/
        
    
    
        
        
            dev
            
                true
            
            
                dev
            
        
        
        
            test
            
                test
            
        
        
        
            pre
            
                pre
            
        
        
        
            product
            
                product
            
        
        
        
            nexus
            
                true
            
            
                
                    nexus
                    nexus
                    http://xxx.xxx.xxx.xxx:7050/repository/maven-public/
                    
                        true
                    
                    
                        true
                    
                    default
                
            
        
        
        
            jdk-1.8
            
                true
                1.8
            
            
                1.8
                1.8
                1.8
            
        
    
    
    

6.打包到私服

在项目的pom.xml加入


  
    maven-public
    http://xxx.xxx.xxx.xxx:7050/repository/maven-public/
  
  
    nexus
    http://xxx.xxx.xxx.xxx:7050/repository/maven-snapshots/
  

运行命令

mvn clean deploy -DskipTests -Pprod

将指定的环境发布到私服

参考

  • maven根据不同的运行环境,打包不同的配置文件
  • maven私服:用nexus搭建企业级私有仓库

你可能感兴趣的:(Maven常用配置)