当前位置:  开发笔记 > 编程语言 > 正文

如何根据目标环境在Maven中复制资源或其他资源?

如何解决《如何根据目标环境在Maven中复制资源或其他资源?》经验,为你挑选了3个好方法。

我必须创建测试战争和生产战争,它将log4j.propertiesWEB-INF目录中有一个不同的文件.我有这些文件log4j.properties(测试战争)和dev.log4j.properties(生产enivorment).

如何将dev.log4j.properties文件复制到log4j.properties文件中进行生产战争?



1> Matthew McCu..:

使用Maven配置文件(http://maven.apache.org/guides/introduction/introduction-to-profiles.html)

创建"dev"和"prod"配置文件,为每个配置文件选择一组备用资源.默认情况下启用Dev.


    
        dev
        
            true
        
        
            
                
                    src/main/resources/dev
                
            
        
    
    
        prod
        
            
                
                    src/main/resources/prod
                
            
        
    

使用所需的配置文件通过: mvn install -Pdevmvn install -Pprod


很高兴听到它.Maven可能看起来很棘手,但是当沿着最佳练习线使用时,听到像你这样的人说"漂亮!"

2> Spring Monke..:

我使用maven-resources插件解决了这个问题,我在其中创建了prod目录,该目录具有生产环境的资源,并在process-resources阶段将它们复制到WEB-INF/classes目录.


   org.apache.maven.plugins
   maven-resources-plugin
    2.3
    
        
            copy-prod-resources
            process-resources
            
                copy-resources
            
            
                webapp/WEB-INF/classes
                
                    
                        src/main/resources/prod
                        true
                    
                
            
        
    



3> stephanos..:

上面的代码对我不起作用 - 必须将其更改为以下代码:


  maven-resources-plugin
  
    
      copy-prod-resources
      process-resources
      
         copy-resources
      
      
        
        true
        
        ${basedir}/target/classes
        
          
            src/main/resources/prod
          
        
      
    
  

推荐阅读
ar_wen2402851455
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有