maven resources

文章目录

  • 简单使用
  • 多模块
    • parent
    • web
    • common
    • 第二种方式
  • maven变量优先级
  • 注意
    • 场景一
    • 场景二

简单使用

过滤 src/main/resources下所有文件的变量


        测试值123
    
   
        
        ${project.artifactId}-${project.version}

        
            
                src/main/resources
                
                true
            
        
    

过滤 src/main/resourcessrc/main/java下所有文件的变量


        测试值123
    
   
        
        ${project.artifactId}-${project.version}

        
            
            
                src/main/java
                
                true
            
            
                src/main/resources
                
                true
            
        
    

使用的xml




    
    

替换变量后




    
    

多模块

parent
– web
– common

parent

    
        
            
                src/main/resources
                true
            
        
    

web

    
        
        测试值123
    

    
        
            jdk-1.8
            
                jdk-1.8
                测试值jdk-1.8
                
            
        
        
            dev
            
                dev
                
            
        
        
            sit
            
                sit
            
        
        
            uat
            
                uat
            
        
    
    
        
        ${project.artifactId}-${project.version}

        
            
                src/main/resources
                
                    env/**
                
                
                true
            
            
                src/main/resources/env/${env}
                ${project.build.outputDirectory}
                true
            
        
    

common

不引入

第二种方式

parent 不引入
– web 引入
– common 引入resources 替换变量即可

maven变量优先级

优先级 -D系统变量 > profile > properties 由高到低。

直接使用系统变量 -Dmaven.test1=bbb

clean compile -Dmaven.test.skip=true -Dmaven.javadoc.skip=true -Dmaven.test1=bbb -P sit

优先级比 profile 和 properties高

最低优先级
    
        
        测试值123
    

优先级高于properties

    
        
            jdk-1.8
            
                jdk-1.8
                测试值jdk-1.8
                
            
        
        
            dev
            
                dev
                
            
        
        
            sit
            
                sit
            
        
        
            uat
            
                uat
            
        
    

注意

场景一

maven setting.xml


		default
	

子模块中

   
        
            jdk-1.8
            
                jdk-1.8
                测试值jdk-1.8
                
            
        
        
            dev
            
                dev
                dev-1.8
            
        
        
            sit
            
                sit
                sit-1.8
            
        
        
            uat
            
                uat
                uat-1.8
            
        
    

打包使用参数-P aaa profile=aaa 上面没有配置则使用默认 default 配置,但是pom.xml没有该配置,如果有配置对应default 的环境

clean compile -Dmaven.test.skip=true -Dmaven.javadoc.skip=true  -P aaa

场景二

maven setting.xml


		dev
	

子模块中

   
        
            jdk-1.8
            
                jdk-1.8
                测试值jdk-1.8
                
            
        
        
            dev
            
                dev
                dev-1.8
            
        
        
            sit
            
                sit
                sit-1.8
            
        
        
            uat
            
                uat
                uat-1.8
            
        
    

打包使用参数-P aaa profile=aaa 上面没有配置则使用默认 default 配置,但是pom.xml没有该配置,如果有配置对应dev的环境

clean compile -Dmaven.test.skip=true -Dmaven.javadoc.skip=true  -P aaa

你可能感兴趣的:(maven,resources)