• 关于Plugin execution not covered by lifecycle configuration: org.apache.maven.plugins:maven-compiler-plugin的解决方案


    前景回顾

    eclipse自带maven生成的repository仓库是在C盘下,由于之前占用空间太大,遂自定义到D盘,删除了C盘的repository。

    原因分析

    原C盘下repository里有下载的插件文件,在D盘下无法找到maven-compiler-plugin的插件。

    解决方法


    方法一:

     1 <build>
     2         <pluginManagement>
     3             <plugins>
     4                 <plugin>
     5                     <groupId>org.eclipse.m2e</groupId>
     6                     <artifactId>lifecycle-mapping</artifactId>
     7                     <version>1.0.0</version>
     8                     <configuration>
     9                         <lifecycleMappingMetadata>
    10                             <pluginExecutions>
    11                                 <pluginExecution>
    12                                     <pluginExecutionFilter>
    13                                         <groupId>org.apache.maven.plugins</groupId>
    14                                         <artifactId>maven-compiler-plugin</artifactId>
    15                                         <versionRange>[2.5,)</versionRange>
    16                                         <goals>
    17                                             <goal>compile</goal>
    18                                             <goal>testCompile</goal>
    19                                         </goals>
    20                                     </pluginExecutionFilter>
    21                                     <action>
    22                                         <ignore />
    23                                     </action>
    24                                 </pluginExecution>
    25                             </pluginExecutions>
    26                         </lifecycleMappingMetadata>
    27                     </configuration>
    28                 </plugin>
    29             </plugins>
    30         </pluginManagement>
    31     </build>

    然后在项目上右击Maven -> Update Project...

    但由于某种原因我们不能随便改pom.xml文件,遂舍弃。

    方法二:

    菜单栏 Window -> Preferences -> Maven -> Lifecycle Mapping
    查看Change mapping file location一栏的地址,一般都是workspacePath/.metadata/.plugins/org.eclipse.m2e.core/lifecycle-mapping-metadata.xml,然而我的org.eclipse.m2e.core目录下没有lifecycle-mapping-metadata.xml文件,于是我们需要到Eclipse的安装目录下找到pluginsorg.eclipse.m2e.lifecyclemapping.defaults_xxxxx.jar文件,解压之后就会看到一个lifecycle-mapping-metadata.xml文件,打开编辑他,在<pluginExecutions>中插入
        <pluginExecution>
          <pluginExecutionFilter>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <versionRange>[2.5,)</versionRange>
            <goals>
              <goal>testCompile</goal>
              <goal>compile</goal>
            </goals>
          </pluginExecutionFilter>
          <action>
            <ignore />
          </action>
        </pluginExecution>
    保存之后将其复制到上面说的workspacePath/.metadata/.plugins/org.eclipse.m2e.core/lifecycle-mapping-metadata.xml目录。
    可以把Preferences -> Maven中的Update Maven projects on startup选项勾上,然后重启Eclipse即可
     
    尚礼 求知 勤奋 谦逊 正直 公平
  • 相关阅读:
    SQL基础篇——如何搭建一个数据库
    SQL基础篇---基本概念解析
    联合体与结构体的区别
    结构体和它在链表中的使用
    火线零线地线
    第十二章 泛型
    Winform 控件使用集锦
    全局钩子和局部钩子
    第八章 方法
    第七章 常量和字段
  • 原文地址:https://www.cnblogs.com/woodafeng/p/10573342.html
Copyright © 2020-2023  润新知