Como resolver "Execução de plug-in não coberta pela configuração do ciclo de vida" para o Spring Data Maven Builds

907

Estou tentando trabalhar com o Spring Data e o Neo4j . Comecei tentando seguir este guia vinculado pelo site principal. Em particular, baseei meu pom.xml no "Olá, mundo!" arquivo de exemplo . Aqui está um trecho do meu pom.xml para o plug-in que está causando os problemas ...

<plugin>
<!-- Required to resolve aspectj-enhanced class features -->
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>aspectj-maven-plugin</artifactId>
    <version>1.0</version>
    <configuration>
        <outxml>true</outxml>
        <aspectLibraries>
            <aspectLibrary>
                <groupId>org.springframework</groupId>
                <artifactId>spring-aspects</artifactId>
            </aspectLibrary>
            <aspectLibrary>
                <groupId>org.springframework.data</groupId>
                <artifactId>spring-data-neo4j</artifactId>
            </aspectLibrary>
        </aspectLibraries>
        <source>1.6</source>
        <target>1.6</target>
    </configuration>
    <executions>
        <!-- ERROR HERE IN ECLIPSE SEE BELOW FOR FULL MESSAGE -->
        <execution>
            <goals>
                <goal>compile</goal>
                <goal>test-compile</goal>
            </goals>
        </execution>
    </executions>
    <dependencies>
        <dependency>
            <groupId>org.aspectj</groupId>
            <artifactId>aspectjrt</artifactId>
            <version>${aspectj.version}</version>
        </dependency>
        <dependency>
            <groupId>org.aspectj</groupId>
            <artifactId>aspectjtools</artifactId>
            <version>${aspectj.version}</version>
        </dependency>
    </dependencies>
</plugin>

O erro que estou vendo é:

 Multiple annotations found at this line:
    - Plugin execution not covered by lifecycle configuration: org.codehaus.mojo:aspectj-maven-plugin:1.0:compile (execution: default, phase: process-classes)
    - Plugin execution not covered by lifecycle configuration: org.codehaus.mojo:aspectj-maven-plugin:1.0:test-compile (execution: default, phase: process-classes)

Estou executando o Eclipse 3.6.2 e m2e 0.13. Eu não sou um especialista em Maven, por isso, seja muito explicativo em suas respostas, se possível.

Eu também tentei o m2e 1.0.0 através deste site de atualização e ainda recebo o mesmo erro.

Andrew White
fonte
1
Qual versão do maven você está usando? O Spring Data (Graph) usou o maven2 para seu processo de compilação (principalmente devido a problemas com o plugin do docbook). . (BTW os projectos de dados primavera vai migrar para Gradle em breve :)
Michael Hunger
1
Para eclipse, estou usando o maven integrado 3.0.3 (o que vier com m2e). Todo o Spring está se movendo para gradear ou apenas o Spring Data?
Andrew White
1
Esqueça esse trabalho com o Groovy. Que pesadelo. Não posso nem usar o Indigo agora por causa dessa farsa.
Spencer Kormos
Alguém pode compartilhar um link para o local em que este novo modo de operação do M2E está documentado?
HDave

Respostas:

1337

No meu caso de um problema semelhante, em vez de usar a sugestão de Andrew para a correção, ele funcionou logo após a introdução da tag <pluginManagement> no pom.xml em questão. Parece que esse erro ocorre devido a uma tag <pluginManagement> ausente. Portanto, para evitar as exceções no Eclipse, basta colocar todas as tags de plug-in dentro de uma tag <pluginManagement> , da seguinte forma:

<build>
    <pluginManagement>
        <plugins>
            <plugin> ... </plugin>
            <plugin> ... </plugin>
                  ....
        </plugins>
    </pluginManagement>
</build>

Uma vez que essa estrutura está em vigor, o erro desaparece.

Simeon Leyzerzon
fonte
29
Funciona para mim também, mas alguém pode explicar o porquê?
Andrew Swan
89
@ Andrew Acho Isso funciona porque M2e não está à procura de plugins em pluginManagement, mas apenas em build/plugins. No mundo do Maven, há uma diferença entre os dois - o primeiro define "se você usar este plug-in, aqui está a configuração a ser usada", enquanto o último afirma "use este plug-in". Veja este post e suas duas principais respostas.
GreenGiant
30
Eu concordo com @GreenGiant. Eu tentei esta solução, mas ela interrompe a compilação, pois o plugin aspectj não é chamado antes da compilação.
30513 Pierre
25
Não é válido para mim. Corrige o erro no Eclipse, mas interrompe a geração do código WS com <goal> wsimport usando o jaxws-maven-plugin. "Marcar permanentemente o objetivo wsimport no pom.xml como ignorado na construção do Eclipse" parece adicionar mais itens no pom.xml e corrigi-lo para m2e.
Nephewtom 17/03/2015
33
Errrr ... Parece que só funciona porque ele desliga todos os plugins em questão ..... Tirá-los completamente também funcionaria, mas suponho que eles estejam lá por um motivo? Os desenvolvedores devem ter certeza de que compreendem absolutamente o que estão fazendo com o maven antes de usar essa "correção".
Michael Haefele
414

Que bagunça. Não me lembro de onde encontrei isso, mas tive que adicionar o seguinte para que o M2Eclipse seja feliz. Ainda mais triste é que não é exatamente fácil entender por que essa tag é necessária.

<build>
      ... various plugins ...

      <pluginManagement>
        <plugins>
            <!--This plugin's configuration is used to store Eclipse 
                m2e settings only. It has no influence on the Maven build itself. -->
            <plugin>
                <groupId>org.eclipse.m2e</groupId>
                <artifactId>lifecycle-mapping</artifactId>
                <version>1.0.0</version>
                <configuration>
                    <lifecycleMappingMetadata>
                        <pluginExecutions>
                            <pluginExecution>
                                <pluginExecutionFilter>
                                    <groupId>org.codehaus.mojo</groupId>
                                    <artifactId>aspectj-maven-plugin</artifactId>
                                    <versionRange>[1.0,)</versionRange>
                                    <goals>
                                        <goal>test-compile</goal>
                                        <goal>compile</goal>
                                    </goals>
                                </pluginExecutionFilter>
                                <action>
                                    <execute />
                                </action>
                            </pluginExecution>
                        </pluginExecutions>
                    </lifecycleMappingMetadata>
                </configuration>
            </plugin>
        </plugins>
    </pluginManagement>
</build>

Havia vários outros problemas com o plug-in M2Eclipse que simplesmente não funcionavam com o Spring Data. No final, desativei o M2Eclipse em favor do plug-in Apache Eclipse .

Andrew White
fonte
3
Qual repositório de plug-ins hospeda o plug-in org.eclipse.m2e: mapeamento do ciclo de vida?
Nathan Feger
6
Se o seu eclipse não consegue encontrar o org.eclipse.m2e: plug-in de mapeamento do ciclo de vida, é porque você colocou o trecho acima na lista de plugins incorreta no pom, ele deve ser colocado em pluginManagement
mkraemerx em
65
nota: o m2e 1.x pode fazer isso automaticamente como uma correção rápida na visualização de problemas
Brad Cupit
7
Obrigado: m2e me ofereceu um 'quickfix' para um plug-in que não reconheceu, o que gerou tudo acima, exceto com <ignore /> em vez de <execute />. Não ofereceu a opção <execute />, que funciona! Enlouquecedor!
Laher
10
Sim, o material <pluginmanagement> fica em <build>. Você pensaria que a página m2 mencionaria essa ninharia.
jjohn
217

No Eclipse Luna 4.4.0, você pode optar por ignorar esse erro nas preferências

Janela > Preferências > Maven > Erros / Avisos > Execução de plug-in não coberta pela configuração do ciclo de vida . Selecione Ignorar / Aviso / Erro como desejar.

Além disso, na correção rápida (Ctrl + 1) desse erro, ele oferece uma opção para marcar o objetivo como ignorado na construção do Eclipse nas preferências do Eclipse (experimental)

Esta é uma maneira mais limpa, pois não modifica o seu pom.xml.

Você precisará executar um projeto Maven > Atualizar para corrigir o mesmo erro em qualquer outro projeto.


No STS (Spring-tool-suite), você pode optar por ignorar esse erro nas preferências

Janela> Preferências> Maven> Erros / Avisos> Execução de plug-in não coberta pela configuração do ciclo de vida. Selecione Ignorar / Aviso / Erro como desejar. Então. Clique com o botão direito do mouse no projeto, clique em Maven e atualize o projeto; o erro desaparecerá.

ShaKa
fonte
Perfeito. Trabalhou para mim na perfeição. Obrigado por compartilhar.
Ajay Kumar
Usei-o também no eclipse 2020-03, não sei por que o erro ocorreu no momento em que importei o projeto. Fiz isso antes pelo menos 4 vezes em outros computadores sem nenhum problema. Eu sou novo no eclipse Eu tenho que dizer que, ainda estou entendendo como ele constrói as coisas, qual deles e quando :-D
Financiador
Esta é a resposta certa. Obrigado. Estou usando o Red Hat CodeReady Studio, que é uma ferramenta baseada em Eclipse.
Igor Vuković
Um dia de economia .. :) Esta solução funcionou para mim.
Jeetendra
Como isso é uma correção? Em vez de o Eclipse reclamar que não está gerando meu código-fonte (sinalizando uma linha no POM.XML com um X vermelho e a mensagem de erro "Execução de plug-in não coberta pela configuração do ciclo de vida"), com essa alteração, o Eclipse silenciosamente não gera meu código Código fonte.
mbmast 02/06
212

Solução sugerida na documentação do Eclipse m2e :

  1. Use a correção rápida do erro no pom.xml e selecione Permanently mark goal run in pom.xml as ignored in Eclipse build- isso irá gerar o código padrão necessário para você.

  2. Para instruir o Eclipse a executar seu plug-in durante a construção - substitua a <ignore/>tag pela <execute/>tag na configuração gerada:

    <action>
        <execute/>
    </action>

    Como alternativa, você pode instruir o Eclipse a executar o plug-in em construções incrementais também:

    <action>
        <execute>
            <runOnIncremental>true</runOnIncremental>
        </execute >
    </action>
Vedran
fonte
6
Também é possível adicionar <runOnIncremental>false|true</runOnIncremental>dentro da tag execute, para fazer o eclipse chamar esse plugin do maven em construções incrementais.
Matthias B
4
Essa solução funcionou para mim também, mas não foi necessário executar a etapa 2) da solução proposta.
Valerio Schiavoni
7
Se você não os marcar como "execute", a construção do eclipse não executará essas execuções de plug-in, mas poderá funcionar também.
mrod
Observe que você também pode incluí-lo globalmente no Eclipse Permanently mark goal run in eclipse preferencese alterar <ignore> para <execute> nas preferências do Eclipse> Maven> Mapeamentos do Ciclo de Vida> Metadados dos mapeamentos do ciclo de vida da área de trabalho aberta .
PhoneixS
2
Obrigado, esta é a solução real. Adicionar a tag <pluginManagement> apenas desativa o plug-in.
user3804769
111

Consulte https://www.eclipse.org/m2e/documentation/m2e-execution-not-covered.html .

Para resolver alguns problemas de longa data, o m2e 1.0 requer instruções explícitas sobre o que fazer com todos os plug-ins do Maven vinculados a fases "interessantes" do ciclo de vida da construção do projeto. Chamamos essas instruções de "mapeamento do ciclo de vida da construção do projeto" ou simplesmente "mapeamento do ciclo de vida" porque elas definem como o m2e mapeia informações do arquivo pom.xml do projeto para a configuração e o comportamento do projeto da área de trabalho do Eclipse durante a construção da área de trabalho do Eclipse.

A configuração do mapeamento do ciclo de vida da construção do projeto pode ser especificada no projeto pom.xml, contribuído pelos plug-ins do Eclipse e também há uma configuração padrão para alguns plug-ins Maven usados ​​com freqüência enviados com m2e. Chamamos isso de "fontes de metadados do mapeamento do ciclo de vida". O m2e criará um marcador de erro como abaixo para todas as execuções de plugins que não possuem mapeamento de ciclo de vida em nenhuma das fontes de metadados de mapeamento.

Plugin execution not covered by lifecycle configuration:
org.apache.maven.plugins:maven-antrun-plugin:1.3:run
   (execution: generate-sources-input, phase: generate-sources)

O m2e corresponde as execuções do plug-in às ações usando a combinação de plug-in groupId, artifactId, intervalo de versão e objetivo. Existem três ações básicas que o m2e pode ser instruído a executar com a execução de um plug-in - ignorar , executar e delegar a um configurador de projeto .

Thomas Broyer
fonte
93
Essa é uma explicação do problema, não uma solução, pelo menos, uma que eu possa usar e trabalhar.
Andrew White
53
Você mesmo deu a resposta, e ela pode ser encontrada na página a que vinculei. Se achar mais importante entender o que significa um erro (e depois encontrar facilmente como corrigi-lo) do que copiar / colar cegamente alguns trechos. "A ciência sem consciência é apenas a ruína da alma." (François Rabelais)
Thomas Broyer
22
Desculpe, mas eu concordo com o Andrew, usar este plugin é muito mais complicado do que deveria. Eu estava iniciando um novo aplicativo e primeiro, embora o problema fosse o meu arquivo pow, exatamente quando tento um pow que sei que deve funcionar, vi que esse problema foi causado por m2e. Desculpe pessoal, mas acho que um bom arquivo pow deve funcionar. Ninguém sabe tudo sobre tudo, eu só quero usar este plugin, não quero saber como ele funciona.
Nei
15
Eu tenho que concordar que esse foi o caminho oposto ao manifesto do Maven (por assim dizer). Torna uma coisa simples tão complexa que, mesmo lendo tudo sobre ela, não consigo fazê-la funcionar metade do tempo. Eu preferiria muito mais lidar com alguma idiossincrasia inventada do que lidar com plugins que não se vinculam às fases do ciclo de vida quando deveriam. Se esta é uma solução provisória, tudo bem ... mas conserte-a porque está quebrada agora.
Brill Pappin
13
Não é Maven que está cagando. Constrói a partir do trabalho da linha de comando. É o plugin m2eclipse (construído pelo pessoal do Eclipse) que está expelindo o erro. Acho que o problema é que o Maven tem um ciclo de vida de construção diferente do Eclipse, portanto, eles precisam que você faça um mapeamento explícito. É uma pena, pois aparentemente você nunca pode usar POMs como eles são. Você sempre tem que adicionar este mapeamento ....
Stijn de Witt
30

m2e 0,13 introduzem conectores m2e e m2e Market Place para estender os recursos m2e. É como o antigo repositório m2e-extras.

Você pode acessar o mercado m2e nas preferências: Preferências> Maven> Descoberta> Abrir catálogo . Instalar a integração WTP resolveu a maioria dos problemas de plugins para mim.

noirbizarre
fonte
1
Não vejo "integração WTP" na lista. Você está usando algum catálogo não padrão?
Ed Staub
Estou usando o catálogo padrão, mas você está certo: não o vejo mais.
noirbizarre
1
community.jboss.org/en/tools/blog/2011/06/23/… . Veja a atualização 2, enfim +1 para grande bagunça
prusswan
2
a partir de Nov 2011, M2e WTP pode ser encontrado em Eclipse mercado
stivlo
1
Funciona, adicione o site de atualização deste URL: download.jboss.org/jbosstools/updates/m2eclipse-wtp
27

Altere as preferências do Maven para execução do plug-in de erro para ignorar

kvm006
fonte
2
Realmente recomendo que esta seja a nova resposta aceita. Muitas outras soluções impedirão o Maven de executar o plug-in inteiramente durante a etapa de compilação especificada, o que raramente é o que o usuário deseja. Geralmente, esse é um problema de configuração, não um erro real. O padrão do Eclipse deve ser Aviso, não Erro.
Nick Straguzzi
26

Observe que a versão 1.7.0 do M2Eclipse (m2e) disponível no trem de lançamento do Eclipse Neon de hoje suporta nova sintaxe para especificar os metadados do mapeamento do ciclo de vida. Como resultado, clichê como este (aqui estamos dizendo ao m2e para ignorar o objetivo):

<pluginManagement>
  <plugins>
    <!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself.-->
    <plugin>
      <groupId>org.eclipse.m2e</groupId>
      <artifactId>lifecycle-mapping</artifactId>
      <version>1.0.0</version>
      <configuration>
        <lifecycleMappingMetadata>
          <pluginExecutions>
            <pluginExecution>
              <pluginExecutionFilter>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>exec-maven-plugin</artifactId>
                <versionRange>[1.5.0,)</versionRange>
                <goals>
                  <goal>exec</goal>
                </goals>
              </pluginExecutionFilter>
              <action>
                <ignore></ignore>
              </action>
            </pluginExecution>
          </pluginExecutions>
        </lifecycleMappingMetadata>
      </configuration>
    </plugin>
  </plugins>
</pluginManagement>

pode ser substituído por uma única linha no nó de execução do plug-in:

<?m2e ignore?>

insira a descrição da imagem aqui

Veja as notas de versão para obter detalhes.

David
fonte
21

Como um adendo às respostas anteriores - há uma solução alternativa que acabei de descobrir se você não pode ou não deseja adicionar todo esse padrão ao POM do seu projeto. Se você procurar no seguinte local:

{Eclipse_folder}/plugins/org.eclipse.m2e.lifecyclemapping.defaults_{m2e_version}

Você deve encontrar um arquivo chamado lifecycle-mapping-metadata.xmlonde você pode fazer as mesmas alterações descritas nas outras respostas e na execução do plugin M2E não abordada .

htompkins
fonte
6
Você também pode editar o WORKSPACE/.metadata/.plugins/org.eclipse.m2e.core/lifecycle-mapping-metadata.xmlarquivo em vez de mexer nos jarros. Mais detalhes podem ser encontrados em Preferences > Maven > Lifecycle Mappings. Além disso, se você selecionar a correção rápida, "Mark goal xxxxx as ignored in Eclipse build in Eclipse preferences (experimental)"ela adicionará todas as alterações necessárias ao arquivo acima.
Nufail # 8/14
17

Eu tive o mesmo problema com o Eclipse v3.7 (Indigo) e m2eclipse como meu plug-in Maven. O erro foi facilmente resolvido, declarando explicitamente a fase de execução na definição do plug-in. Então meu pom fica assim:

<project>
    ...
    <build>
        ...
        <plugins>
            <plugin>

                <groupId>org.codehaus.mojo</groupId>
                <artifactId>buildnumber-maven-plugin</artifactId>
                <version>1.0</version>

                <configuration>
                    <timestampFormat>yyyy-MM-dd_HH-mm-ss</timestampFormat>
                </configuration>

                <executions>
                    <execution>
                        *<phase>post-clean</phase>*
                        <goals>
                            <goal>create-timestamp</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
        ...
Kristiaan
fonte
10
  1. Vá para Ajuda> Instalar novo software ...
  2. Use este repositório de software

    Verifique se "Entre em contato com todos os sites de atualização durante a instalação para encontrar o software necessário" está marcado.

  3. Instale o Configurador AJDT m2e

Fonte: Atualizando a integração do Maven para o SpringSource Tool Suite 2.8.0 (Andrew Eisenberg)

Isso deve instalar automaticamente o ADJT se você não o tiver instalado, mas se não o instalar, instale o AspectJ Development Tools (ADJT) primeiro no "site de atualização Indigo" (de acordo com sua versão do Eclipse).

Mais informações no site AspectJ Development Tools .

Hendy Irawan
fonte
Eu tentei isso, mas recebi o erro: Missing requirement: Maven Integration for AJDT (Optional) 0.13.0.201107281640 (org.maven.ide.eclipse.ajdt.feature.feature.group 0.13.0.201107281640) requires 'org.eclipse.ajdt.feature.group 1.5.0' but it could not be found
Mahmoud Saleh
Msaleh, tentar a minha resposta revisto
Hendy Irawan
9

workspace/rtc-ws/.metadata/.plugins/org.eclipse.m2e.core/lifecycle-mapping-metadata.xmlpara criar lifecycle-mapping-metadata.xmlarquivo e colar abaixo e recarregar a configuração como abaixo

Se você estiver usando o Eclipse 4.2 e tiver problemas com o mapeamento e não colocar bagunça no seu, pom.xmlcrie um novo arquivo, lifecycle-mapping-metadata.xmlconfigure-o Windows -> Preferences -> Lifecycle mapping (não se esqueça de pressionar Atualizar os metadados dos mapeamentos do ciclo de vida da área de trabalho após cada alteração desse arquivo!). Aqui está um exemplo baseado emeclipse/plugins/org.eclipse.m2e.lifecyclemapping.defaults_1.2.0.20120903-1050.jar/lifecycle-mapping-metadata.xml

<?xml version="1.0" encoding="UTF-8"?>
<lifecycleMappingMetadata>
    <pluginExecutions>
        <pluginExecution>
            <pluginExecutionFilter>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>buildnumber-maven-plugin</artifactId>
                <goals>
                    <goal>create-timestamp</goal>
                </goals>
                <versionRange>[0.0,)</versionRange>
            </pluginExecutionFilter>
            <action>
                <ignore />
            </action>
        </pluginExecution>

        <pluginExecution>
            <pluginExecutionFilter>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-dependency-plugin</artifactId>
                <goals>
                    <goal>list</goal>
                </goals>
                <versionRange>[0.0,)</versionRange>
            </pluginExecutionFilter>
            <action>
                <ignore />
            </action>
        </pluginExecution>

        <pluginExecution>
            <pluginExecutionFilter>
                <groupId>org.zeroturnaround</groupId>
                <artifactId>jrebel-maven-plugin</artifactId>
                <goals>
                    <goal>generate</goal>
                </goals>
                <versionRange>[0.0,)</versionRange>
            </pluginExecutionFilter>
            <action>
                <ignore />
            </action>
        </pluginExecution>

        <pluginExecution>
            <pluginExecutionFilter>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>gwt-maven-plugin</artifactId>
                <goals>
                    <goal>compile</goal>
                </goals>
                <versionRange>[0.0,)</versionRange>
            </pluginExecutionFilter>
            <action>
                <ignore />
            </action>
        </pluginExecution>

        <pluginExecution>
            <pluginExecutionFilter>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-dependency-plugin</artifactId>
                <goals>
                    <goal>copy-dependencies</goal>
                    <goal>unpack</goal>
                </goals>
                <versionRange>[0.0,)</versionRange>
            </pluginExecutionFilter>
            <action>
                <ignore />
            </action>
        </pluginExecution>

        <pluginExecution>
            <pluginExecutionFilter>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-antrun-plugin</artifactId>
                <versionRange>[1.7,)</versionRange>
                <goals>
                    <goal>run</goal>
                </goals>
            </pluginExecutionFilter>
            <action>
                <ignore />
            </action>
        </pluginExecution>


        <pluginExecution>
            <pluginExecutionFilter>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-checkstyle-plugin</artifactId>
                <versionRange>[2.8,)</versionRange>
                <goals>
                    <goal>check</goal>
                </goals>
            </pluginExecutionFilter>
            <action>
                <ignore />
            </action>
        </pluginExecution>

    </pluginExecutions>
</lifecycleMappingMetadata>
fatih tekin
fonte
9

Eu tive o mesmo problema com o índigo e um projeto que precisa gerar fontes Java a partir do XSD.
Eu poderia corrigi-lo fornecendo o mapeamento do ciclo de vida ausente, conforme descrito nesta página

Tillmann
fonte
8

Corrigi -o após a publicação no blog Atualizando a integração do Maven para o SpringSource Tool Suite 2.8.0 .

Siga o conselho na seção " Uh oh ... meus projetos não são mais construídos ". Mesmo quando se destina ao SpringSource Tool Suite, usei-o para corrigir uma instalação regular do Eclipse. Não precisei modificar meus arquivos pom.

Chepech
fonte
1
O último recurso a reverter para uma versão mais antiga do m2e ou do IDE que você usa.
Chepech 21/10
5

Use m2e 0.12 , última versão do Sonatype.

Oh Chin Boon
fonte
5

Este erro ocorre também no neon devido à falta do conector m2e. Solução: passe o mouse e selecione - Descubra novos conectores m2e.

Ele instalará um novo conector e é isso.

Tamer Awad
fonte
4

Eu estava usando

<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.6</version>
<executions>
    <execution>
        <id>runSomeAntTasks</id>
        <phase>test-compile</phase>
        .
        .
        <goals>
            <goal>run</goal>
        </goals>
    </execution>
</executions>

e mudou para

<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.6</version>
<executions>
<execution>
    <id>runSomeAntTasks</id>
    <phase>integration-test</phase>
        .
        .

        <goals>
            <goal>run</goal>
        </goals>
    </execution>
</executions>

e o erro foi embora. Talvez não seja recomendável vincular uma execução à fase de compilação de teste, portanto, encontrar uma fase diferente pode ser uma solução alternativa para adicionar a configuração de gerenciamento de plug-in ao ciclo de vida do maven.

Prumo
fonte
4

Onde encontrar WTP:

Passe o mouse em <plugin> no pom.xml e em "Descubra novos conectores m2e".

Eu instalei todos eles que são verificados por padrão e funciona.

siOnzee
fonte
4

Eu tive exatamente o mesmo problema após atualizar o m2e e o resolvi reinstalando o Maven Integration for Eclipse WTP.

Acontece que eu o desinstalei tentando atualizar o m2e da ​​versão 0.x para 1.x

Lisandro
fonte
3

Eu tive esse problema hoje. Eu estava usando o STS 3.4 com seu Roo 1.2.4 incluído. Mais tarde, tentei com o Eclipse Kepler e o Roo 1.2.5, mesmo erro.

Alterei meu pom.xml adicionando a tag pluginTemplates após a compilação e antes da declaração de plugins, mas não funcionou.

O que fez a mágica para mim:

  • Usando jdk 1.7.0_51
  • Roo 1.2.5 baixado
  • Download do Maven 3.2.1 (se não, quando executa "executar eclipse", este erro aparece "erro = 2, nenhum arquivo ou diretório")
  • Diretórios bin bin JDK, Roo e Maven configurados no meu PATH:

    exportar PATH = / opt / jdk1.7.0_51 / bin: $ PATH exportar PATH = / opt / spring-roo-1.2.5.RELEASE / bin: $ PATH exportar PATH = / opt / apache-maven-3.2.1 / bin : $ PATH

Fiz minha configuração da seguinte maneira: ( http://docs.spring.io/spring-roo/reference/html/beginning.html )

$ mkdir hello 
$ cd hello
$ roo.sh
roo> project --topLevelPackage com.foo
roo> jpa setup --provider HIBERNATE --database HYPERSONIC_PERSISTENT 
roo> web mvc setup
roo> perform eclipse

Abra com o Eclipse (nada do STS, mas acho que funciona): Importar -> Projetos existentes no espaço de trabalho

campoer
fonte
2

Encontrei exatamente o mesmo problema com o plugin maven thrift. Aqui está a minha solução, que não requer nenhuma bagunça no seu pom.xml:

  1. Use o utilitário maven da linha de comando mvn

    mvn eclipse: eclipse

    criar um projeto eclipse

  2. Importe o projeto no eclipse. Lembre-se de usar

    Arquivo> Importar> Geral> Projetos existentes na área de trabalho

    para adicionar o projeto ao seu espaço de trabalho.

Isto deve resolver o problema.

PickBoy
fonte
2

Em vez de bagunçar seu arquivo pom, sugiro que você vá para Mostrar VisualizaçãoMarcadores no Eclipse, selecione e exclua os marcadores dos erros apropriados.

Bharath Lakshman
fonte
Grrr, eu odeio ter que escolher entre dois males. Adicionando dezenas de linhas de lixo a pom = ruim. Do seu jeito = também ruim, porque continua reaparecendo (toda vez que você salva o pom) e eu tenho que dizer a todos que está tudo bem.
Iain
1

Se você estiver usando o Eclipse Juno, pode ser o problema do Maven Integration For Eclipse WTP . Portanto, instale o mesmo no Eclipse Market Place.

Na Ajuda do Eclipse IDE >> Eclipse Market Place >>, digite a consulta wtp e ela mostrará a integração do maven para o WTP do eclipse para Juno, instale-o e atualize as dependências do maven e aproveite

Mohammed Irfan Tirupattur
fonte
1

Eu recebi o mesmo erro. Depois de fazer o seguinte, foi embora.

  1. Clique com o botão direito do mouse no projeto.
  2. Selecione Maven> Atualizar projeto ...
Lilylakshi
fonte
1

Esta resposta é tão boa quanto a principal resposta de gerenciamento de plug-ins acima (ou seja, é terrível).

Apenas exclua todo o código xml ofensivo no pom.

Feito. Problema resolvido (exceto que você acabou de quebrar sua configuração do maven ...).

Os desenvolvedores devem ter muito cuidado para entender as tags de gerenciamento de plug-ins antes de executar qualquer uma dessas soluções. Tocar aleatoriamente o gerenciamento de plugins em torno de seus plugins é aleatório provavelmente quebrará a construção do maven para todos os outros, apenas para que o eclipse funcione.

Michael Haefele
fonte
1

você pode suprimir esse erro no eclipse: Janela -> Preferências -> Maven -> Erro / Avisos

Pankaj Rastogi
fonte
1

Mudando

<artifactId>aspectj-maven-plugin</artifactId>
<version>1.2</version>

para dentro

<artifactId>aspectj-maven-plugin</artifactId>
<version>1.3</version>

resolveu o problema para mim.

não cuidar
fonte
1

Eu encontrei isso usando o Eclipse v4.3 (Kepler) e o Maven 3.1.

A solução é usar um JDK e não um JRE para o seu projeto Eclipse. Certifique-se de tentar maven cleantestar no Eclipse apenas para baixar arquivos JAR ausentes.

Yamato
fonte
1

Segui a dica da GUI para encontrar qualquer conector e, em seguida, encontrei o AspectJ Integrator da SpringSource Team. Após a instalação, foi resolvido.

deng hui
fonte
0

Para mim, isso foi causado pelas classes da AspectJ. Não foi possível encontrar um plug-in no Discovery que poderia ajudar. Portanto, eu corrigi isso copiando os arquivos org.maven.ide.eclipse.ajdt, em pastas de plug-in e recurso, de uma instalação existente do STS.

Eu sei, abordagem muito rude.

DevCat
fonte