栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

解决maven-compiler-plugin编译没有配置文件的情况

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

解决maven-compiler-plugin编译没有配置文件的情况

问题描述

通过测试发现,使用下面两种compile编译方式是有区别的。

区别:

  1. 第一个是idea自带的。
  2. 第二个是我项目中自行配置的maven-compiler-plugin。

使用区别:

  1. idea自带compile执行效果:
  2. 手动在maven配置的编译插件执行效果:

综上

  • 这就是问题所在 ,maven自带的只对java文件进行编译,对resources资源文件夹不做任何处理。而idea自带的compile会先拷贝resources下的配置文件到target,再进行编译。
解决问题

发现了问题所在那就好办了。

  1. 点击idea的compile->resources查看其执行log,发现有maven-resources-plugin:3.2.0:resources输出记录,因此猜测idea是使用了这个叫maven-resources-plugin插件进行资源拷贝。
  2. 因此来到maven仓库搜索maven-resources-plugin,将其加入pom.xml配置文件。
  3. 模仿idea的resource,执行新加入插件的resource命令。
  4. 查看效果,发现效果不错,同时也验证了我们的猜想,仅仅只拷贝了资源文件。适合资源文件和java文件分开修改的情况分开使用resource和compile命令。
附 如何将一个插件绑定到idea的构建生命周期?


比如将拷贝resources操作绑定到上图的compile,当点击compile执行时,自动执行资源拷贝。

    
        
            
                org.apache.maven.plugins
                maven-resources-plugin
                3.2.0
                
                    
                        
                            src/main/resources
                        
                    
                    target/classes
                
                
                    
                        my-resources-copy
                        compile
                        
                            copy-resources
                        
                    
                
            
            
                org.apache.maven.plugins
                maven-compiler-plugin
                3.6.0
                
                    1.8
                    1.8
                    UTF8
                
            
        
    
  • configuration:配置输入输出目标。
  • phase:绑定到哪个阶段。参考:Maven 构建生命周期。如果是绑定到compile阶段,也可以写成validate,只要在compile阶段之前就行;如果是同一阶段,在pom.xml中插件先定义先执行。
  • goal:执行的操作。我们知道,一个插件中可能包含多个操作,例如:编译、测试编译、help。

    双击Lifecycle下compile执行效果:

    如图便是我们自己加入的插件。
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/332004.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号