Eu tenho meu projeto maven configurado como 1 projetos de shell e 4 módulos filhos. Quando tento construir o shell. Eu recebo:
[INFO] Scanning for projects...
[ERROR] The build could not read 1 project -> [Help 1]
[ERROR]
[ERROR] The project module1:1.0_A0 (C:\module1\pom.xml) has 1 error
[ERROR] Non-resolvable parent POM: Failure to find shell:pom:1.0_A0 in http://nyhub1.ny.ssmb.com:8081/nexus/content/repositories/JBoss/ was cached in the local repository, resolution will not be reattempted until the update interval of jboss has elapsed or updates are forced and 'parent.relativePath' points at wrong local POM @ line 5, column 11 -> [Help 2]
Se eu tento construir um módulo solitário, obtenho o mesmo erro, apenas substitua o módulo 1, por qualquer módulo que seja.
Faça com que todos façam referência ao pai em seus poms.
<parent>
<artifactId>shell</artifactId>
<groupId>converter</groupId>
<version>1.0_A0</version>
</parent>
Aqui estão as partes relevantes do shell pom:
<groupId>converter</groupId>
<artifactId>shell</artifactId>
<version>1.0_A0</version>
<packaging>pom</packaging>
<name>shell</name>
<modules>
<module>module1</module>
<module>module2</module>
<module>module3</module>
<module>module4</module>
</modules>
<relativePath>..</relativePath>
abaixo<parent></parent>
funcionou para mim.mvn install -N & mvn install
Respostas:
Somente para referência.
As alegrias de Maven.
Colocar o caminho relativo dos módulos para ../pom.xml resolveu.
O
parent
elemento possui umrelativePath
elemento que você precisa apontar para o diretório do pai. O padrão é..
fonte
<relativePath>..</relativePath>
abaixo<parent></parent>
?../pom.xml
para../<parent folder>/pom.xml
.Ele também pode ser corrigido colocando o
settings.xml
arquivo correto no~/.m2/
diretório.fonte
maven.repo
também ..O motivo alternativo também pode ser o artefato pai vem de um repositório que não é acessível a partir de
pom.xml
um repositório normalmente privado. A solução foi fornecer esse repositório empom.xml
:No meu caso o problema ficou ainda mais complicado devido ao Eclipse: o repositório estava ativo apenas no perfil especial (
<profiles><profile><id>activate-private-repo</id><repositories>...
) e a GUI do Maven no Eclipse não permitia definir este perfil através deCtrl+Alt+P
atalho.A solução foi declarar temporariamente o repositório fora do perfil (incondicionalmente), lançar o
Alt+F5
projeto de atualização Maven, ativar o perfil e colocar a declaração do repositório de volta no perfil. Este é um bug do Eclipse, não do Maven.fonte
POM pai não resolvível: Isso significa que você não pode resolver o repo pai.
Trun no modo de depuração:
Porque o repo pai não faz parte da central maven. A solução é especificar um setting.xml em ~ m2 / para ajudar a resultar no POM pai. /Users/username/.m2/settings.xml
Nesse XML, pode ser necessário especificar as informações do repositório.
fonte
Basta adicionar
<relativePath />
para que o pai em pom fique assim:fonte
verifique se você tem valores corretos nos POMs filhos
No Eclipse, por exemplo, você pode pesquisá-lo:
fonte
<relativePath>
Se você construir em um projeto filho,
<relativePath>
poderá ajudá-lo a resolver o problema pai.instalar pom pai
Mas se você construir o projeto filho a partir de sua pasta,
<relativePath>
não funciona. Você podeinstall
colocar o pom pai em seu repositório local primeiro e, em seguida, construir o projeto filho.fonte
Substitua 1.0_A0 por $ {project.version}
Execute o mvn uma vez. Isso fará o download de todos os repositórios necessários. Você pode voltar para 1.0_A0 após esta etapa.
fonte
Eu tive um problema semelhante no meu trabalho.
Construir o projeto pai sem dependência criou o arquivo parent_project.pom na pasta .m2.
Em seguida, adicione o módulo filho no POM pai e execute a construção do Maven.
fonte
Adicionar uma dependência em
pom.xml:
fonte
Resolvi esse problema depois de uma longa tentativa, criei outro arquivo chamado "parent_pom.xml" no diretório de arquivos do módulo filho local e colei o conteúdo de parent_pom.xml, que está localizado remotamente, no recém-criado "parent_pom.xml " Funcionou para mim e a mensagem de erro desapareceu.
fonte
Dentro da tag de caminho relativo, faça o seguinte
e então RunAs-> Maven build
Funcionou para mim
fonte
Eu tive o problema de que dois arquivos pom.xml de compilação de reator tinham o mesmo artefactId.
fonte