• maven继承parent,relativePath warn信息的解决办法


    往下看之前一定要先看

    %MAVEN_HOME%/conf/settings.xml

    配置文件的是否更改了,是否配置正确

    <mirror>       
          <id>nexus</id>        
          <url>http://maven.xxxxxx.com/nexus/content/groups/public/</url>       
          <mirrorOf>central</mirrorOf>
        </mirror>
        <!--
        <mirror>
          <id>alimaven</id>
          <name>aliyun maven</name>
          <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
          <mirrorOf>central</mirrorOf>        
        </mirror>
        -->

    转自:http://blog.sina.com.cn/s/blog_56d8ea9001013fz9.html
    比如:
    <parent>
    <groupId>com.tenace</groupId>
    <artifactId>tenace</artifactId>
    <version>2.0.1</version>
    <relativePath></relativePath> //刚开始无此句
    </parent>
    <groupId>com.joinspider</groupId>
    <artifactId>spiderengine</artifactId>
    <version>2.6.0-SNAPSHOT</version>

    tenace作为pom项目已经发布至repo,如果没有指定relativapath。则mvn -X -e clean package可以看到如下警告信息:
    [WARNING]
    [WARNING] Some problems were encountered while building the effective model for
    com.joinspider:spiderengine:jar:2.6.0-SNAPSHOT
    [WARNING] 'parent.relativePath' points at com.joinspider:joinspider instead of c
    om.tenace:tenace, please verify your project structure @ line 4, column 10
    [WARNING]
    [WARNING] It is highly recommended to fix these problems because they threaten t
    he stability of your build.
    [WARNING]
    [WARNING] For this reason, future Maven versions might no longer support buildin
    g such malformed projects.

    解决办法则是加上<relativePath></relativePath>。
    说明见链接:http://maven.apache.org/ref/3.0.3/maven-model/maven.html#class_parent

    说明如下:
    The relative path of the parent pom.xml file within the check out. If not specified, it defaults to ../pom.xml. Maven looks for the parent POM first in this location on the filesystem, then the local repository, and lastly in the remote repo. relativePath allows you to select a different location, for example when your structure is flat, or deeper without an intermediate parent POM. However, the group ID, artifact ID and version are still required, and must match the file in the location given or it will revert to the repository for the POM. This feature is only for enhancing the development in a local checkout of that project. Set the value to an empty string in case you want to disable the feature and always resolve the parent POM from the repositories.
    Default value is: ../pom.xml.

  • 相关阅读:
    ftl总结
    关于button的自动刷新
    判断json格式中是否含有key
    main方法的参数
    开发笔记--java.lang.OutOfMemoryError: PermGen space异常处理
    C/C++混合编程
    MFC 模块状态的实现
    类的私有private构造函数 ,为什么要这样做
    MFC DLL 导出函数的定义方式
    关于 AfxGetStaticModuleState ()
  • 原文地址:https://www.cnblogs.com/exmyth/p/6210318.html
Copyright © 2020-2023  润新知