«parent.relativePath» указывает на мою com.mycompany: MyProject вместо org.apache: apache - Почему? - PullRequest
120 голосов
/ 14 мая 2011

Что верно, так это то, что каталог проекта Solr находится внутри родительского каталога MyProject (но между ними нет модуля или каких-либо отношений maven, просто удобство FS). Нужно ли размещать это?

$ mvn -DskipTests clean install
[INFO] Scanning for projects...
[WARNING] 
[WARNING] Some problems were encountered while building the effective model for org.apache.lucene:lucene-solr-grandparent:pom:3.1-SNAPSHOT
[WARNING] 'parent.relativePath' points at com.mycompany:MyProject instead of org.apache:apache, please verify your project structure @ line 23, column 11
[WARNING] 
[WARNING] It is highly recommended to fix these problems because they threaten the stability of your build.
[WARNING] 
[WARNING] For this reason, future Maven versions might no longer support building such malformed projects.
[WARNING] 

из pom.xml:

<parent>
    <groupId>org.apache</groupId>
    <artifactId>apache</artifactId>
    <version>8</version>
  </parent>

$ pwd
/Users/simpatico/ws/MyProjectBaseDir/solr

Ответы [ 5 ]

229 голосов
/ 15 мая 2011

Добавьте empty <relativePath> к <parent>, чтобы он разрешал родительский pom из репозиториев.

  <parent>
    <groupId>org.apache</groupId>
    <artifactId>apache</artifactId>
    <version>8</version>
    <relativePath></relativePath>
  </parent>

Вот соответствующий doc .

Эта функция предназначена только для улучшения разработки при локальной проверке этого проекта.Установите значение в пустую строку, если вы хотите отключить функцию и всегда разрешать родительский POM из репозиториев.
Значение по умолчанию: ../pom.xml.

18 голосов
/ 14 мая 2011

или проигнорируйте предупреждение, переместите источники из несвязанного родителя или введите правильное значение элемента. Проблема вызвана значением по умолчанию дляlativePath, которое является ../pom.xml, и это значение по умолчанию вводится в эффективный pom, вызывая предупреждение.

2 голосов
/ 20 июля 2015

Это сообщение может быть вызвано pom.xml в родительском каталоге относительно вашего текущего проекта.Помпа в родительском каталоге не соответствует config.parent конфигурации текущего помпа.

1 голос
/ 14 марта 2017

Я думаю, вы пропустили тег <relativePath> в вопросе. Я говорю это потому, что без этого эта ошибка не возникнет. Как говорится,

Строка, на которой вам нужно сосредоточиться, - это следующее предупреждение:

parent.relativePath 'указывает на com.mycompany: MyProject вместо org.apache: апач

В нем четко сказано, что относительный путь тега в вашем модуле указывает на файл pom, у которого artifactId отличается от указанного

Это потому, что существует несоответствие между artifactId вашего parent/pom.xml и artifactId, которое вы упомянули в теге <parent> module/pom.xml. Чтобы избежать предупреждения, измените <parent> в вашем module/pom.xml, как показано ниже.

  <parent>
    <groupId>com.mycompany</groupId>
    <artifactId>MyProject</artifactId>
    <version>8</version>
    <relativePath>path-to-your-parent-pom.xml</relativePath>
  </parent>
0 голосов
/ 23 июля 2018

У меня есть дополнительный случай.Случай с толстым пальцем с моей стороны.

У моего родителя пом было следующее:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>com.mygroup </groupId>
    <artifactId>pom-parent</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <packaging>pom</packaging>
    <name>pom-parent</name>

и мой (ребенок) пом

<parent>
    <groupId>com.mygroup</groupId>
    <artifactId>pom-parent</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <relativePath>../pom-parent/pom.xml</relativePath>
</parent>  

Идентификатор моей группы в моем родителев конце имени было толстое пространство для пальцев.«com.mygroup» вместо правильного «com.mygroup».

Из-за этой жирной ошибки пальца ........ имена "groupId" не совпадают .... и я получилошибка.

Ака, проверьте, нет ли ошибок жирным пальцем, прежде чем вы решите слишком много крайностей.

Ошибка, которую я получил для интернет-поиска

"Проектошибка сборки: "parent.relativePath" POM "" указывает на "", пожалуйста, проверьте структуру своего проекта "

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...