Wykonanie wtyczki nie objęte konfiguracją cyklu życia (jbossas 7 EAR archetype)

Używam Eclipse 3.7 Indigo z wtyczką Maven M2E 1.0.100.

Korzystanie z JBoss 7.x JavaEE 6 archetyp ucha, pom dla ucha daje mi ten błąd:

Wykonanie wtyczki nie objęte konfiguracją cyklu życia: org.Apacz.maven.wtyczki: maven-ear-plugin: 2.6: generate-application-xml (wykonanie: default-generate - application-xml, phase: generate-resources)

<plugin>
   <groupId>org.apache.maven.plugins</groupId>
   <artifactId>maven-ear-plugin</artifactId>
   <version>2.6</version>
   <configuration>
      <!-- Tell Maven we are using Java EE 6 -->
      <version>6</version>
      <!-- Use Java EE ear libraries as needed. Java EE ear libraries 
                  are in easy way to package any libraries needed in the ear, and automatically 
                  have any modules (EJB-JARs and WARs) use them -->
      <defaultLibBundleDir>lib</defaultLibBundleDir>
      <modules></modules>
   </configuration>
<plugin>
Author: fejese, 2012-02-04

10 answers

Jest to" funkcja " wtyczki M2E, która została wprowadzona jakiś czas temu. Nie jest to bezpośrednio związane z wtyczką JBoss EAR, ale dzieje się również z większością innych wtyczek Maven.

Jeśli masz wykonanie wtyczki zdefiniowane w pom (jak wykonanie maven-ear-plugin:generate-application-xml), musisz również dodać dodatkowe informacje konfiguracyjne dla M2E, które mówią M2E co zrobić, gdy kompilacja jest uruchomiona w Eclipse, np. buduje, ... Jeśli brakuje tych informacji, M2E narzeka na to, pokazując komunikat o błędzie:

"wykonanie wtyczki nie jest objęte konfiguracją cyklu życia"

Zobacz tutaj, aby uzyskać bardziej szczegółowe wyjaśnienie i przykładową konfigurację, która musi zostać dodana do pom, aby ten błąd zniknął:

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

 135
Author: Jan,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-08-31 10:18:38

W każdym razie jest już za późno, ale moje rozwiązanie było proste - kliknij prawym przyciskiem myszy na Komunikat o błędzie w Eclipse i wybierz Quick Fix > > Ignoruj dla każdego pom z takimi błędami

 43
Author: java_newbie,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-09-04 09:39:51

Eclipse ma koncepcję przyrostowych kompilacji.Jest to niezwykle przydatne, ponieważ oszczędza dużo czasu.

Jak to jest przydatne

Powiedz, że zmieniłeś tylko jednego .plik java. Konstruktorzy przyrostowi będą mogli skompilować kod bez konieczności przekompilowania wszystkiego (co zajmie więcej czasu).

Teraz jaki jest problem z wtyczkami Mavena

Większość wtyczek Mavena nie jest zaprojektowana do przyrostowych kompilacji, a tym samym stwarza problemy dla m2e. m2e nie wie, czy cel wtyczki jest coś, co jest kluczowe lub czy jest nieistotne. Jeśli po prostu uruchomi każdą wtyczkę, gdy zmieni się pojedynczy plik, zajmie to dużo czasu.

To jest powód, dla którego m2e opiera się na informacjach metadanych, aby dowiedzieć się, jak należy postępować z wykonaniem. m2e wymyślił różne opcje, aby dostarczyć te informacje metadanych, a kolejność preferencji jest jak poniżej (od najwyższej do najniższej)

  1. pom.plik xml z projekt
  2. rodzic, dziadek-rodzic i tak dalej pom.pliki xml
  3. [M2E 1.2+] preferencje przestrzeni roboczej
  4. zainstalowane rozszerzenia m2e
  5. [[23]}[m2e 1.1+] metadane mapowania cyklu życia dostarczane przez wtyczkę maven
  6. domyślne metadane mapowania cyklu życia wysyłane z m2e

1,2 odnosi się do określenia sekcji pluginManagement w tagu pliku pom lub któregokolwiek z jego rodziców. M2E odczytuje tę konfigurację, aby skonfigurować projekt.Poniżej fragment poleca M2E ignorować celem wtyczki yuicompressor-maven jslint icompress

<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>net.alchim31.maven</groupId>
                                    <artifactId>yuicompressor-maven-plugin</artifactId>
                                    <versionRange>[1.0,)</versionRange>
                                    <goals>
                                        <goal>compress</goal>
                                        <goal>jslint</goal>
                                    </goals>
                                </pluginExecutionFilter>
                                <action>
                                    <ignore />
                                </action>
                            </pluginExecution>
                        </pluginExecutions>
                    </lifecycleMappingMetadata>
                </configuration>
            </plugin>
        </plugins>
    </pluginManagement>

3) Jeśli nie wolisz zanieczyszczać pliku pom tymi metadanymi, możesz zapisać je w zewnętrznym pliku XML (opcja 3). Poniżej znajduje się przykładowy plik mapowania, który instruuje m2e, aby ignorował cele jslint i compress wtyczki yuicompressor-maven

<?xml version="1.0" encoding="UTF-8"?>
<lifecycleMappingMetadata>
    <pluginExecutions>
        <pluginExecution>
            <pluginExecutionFilter>
                <groupId>net.alchim31.maven</groupId>
                <artifactId>yuicompressor-maven-plugin</artifactId>
                <versionRange>[1.0,)</versionRange>
                <goals>
                    <goal>compress</goal>
                    <goal>jslint</goal>
                </goals>
            </pluginExecutionFilter>
            <action>
                <ignore/>
            </action>
        </pluginExecution>
    </pluginExecutions>
</lifecycleMappingMetadata>

4) Jeśli nie podoba Ci się żadna z tych opcji 3, możesz użyć złącza M2E (rozszerzenia) dla wtyczki maven.Złącze z kolei zapewni metadane do m2e. przykład informacji o metadanych w złączu można zobaczyć pod tym linkiem . Być może zauważyłeś, że metadane odnoszą się do konfiguratora. Oznacza to po prostu, że m2e przekaże odpowiedzialność na daną klasę Javy dostarczoną przez autora rozszerzenia.Konfigurator może skonfigurować projekt (np. dodać dodatkowe foldery źródłowe itp.) i zdecydować, czy wykonać rzeczywisty plugin Mavena podczas przyrostowego budowania (jeśli nie jest prawidłowo zarządzany w konfiguratorze może prowadzić do niekończących się kompilacji projektów)

Zapoznaj się z tymi linkami, aby uzyskać przykład konfiguracji (link1,link2 ). Tak więc w przypadku, gdy wtyczka jest czymś, czym można zarządzać za pomocą zewnętrznego złącza, możesz ją zainstalować. m2e utrzymuje listę takich złączy wniesionych przez innych deweloperów.Jest to znany jako katalog discovery. m2e wyświetli monit o zainstalowanie złącza, jeśli nie masz jeszcze żadnych metadanych mapowania cyklu życia dla wykonanie za pomocą jednej z opcji (1-6) i katalog discovery ma pewne rozszerzenie, które może zarządzać wykonaniem.

Poniższy obrazek pokazuje, jak m2e prosi o zainstalowanie złącza dla wtyczki build-helper-maven. sugerowane złącze instalacyjne z katalogu discovery.

5)M2E zachęca autorów wtyczek do wspierania przyrostowego tworzenia i dostarczania mapowania cyklu życia w samej wtyczce maven.Oznaczałoby to, że użytkownicy nie będą musieli używać żadnych dodatkowych mapowań cyklu życia lub złączy.Niektórzy autorzy wtyczek mają już zaimplementowano to

6) domyślnie M2E przechowuje metadane mapowania cyklu życia większości powszechnie używanych wtyczek, takich jak Maven-compiler-plugin i wiele innych.

A teraz wracając do pytania: prawdopodobnie możesz po prostu podać mapowanie ignorowanych cykli życia w 1, 2 lub 3 dla tego konkretnego celu, który stwarza problemy dla Ciebie.

 28
Author: coderplus,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-10-19 04:36:45

Dobrym obejściem, aby przypomnieć, że m2e może być lepiej skonfigurowany, bez projektu dziedziczącego fałszywie dodatni znacznik błędu, jest po prostu downgrade tych błędów do ostrzeżeń:

Window - > Preferences -> Maven - > Errors / Warnings - > plugin execution not covered by lifecycle configuration = Warning

 14
Author: mgobeil,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-11-26 09:53:50

Próbowałem wykonać konkretne podłączenie zaraz po wyczyszczeniu tj. post-clean (domyślnie jest to clean phase). To zadziałało dla mnie z eclipse indigo. Właśnie dodane Post-clean rozwiązało problem dla mnie.

<executions>
  <execution>
    <configuration>
    </configuration>
   <phase>post-clean</phase>
    <goals>
      <goal>update-widgetset</goal>
    </goals>
  </execution>
</executions> 
 12
Author: Charith,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-08-15 07:31:36

Udało mi się rozwiązać ten sam problem z maven-antrun-plugin i jaxb2-maven-plugin w Eclipse Kepler 4.3 poprzez zastosowanie tego rozwiązania: http://wiki.eclipse.org/M2E_plugin_execution_not_covered#Eclipse_4.2_add_default_mapping
Więc zawartość mojego % elipse_workspace_name%/.metadane/pluginy / org.zaćmienie.m2e. core/lifecycle-mapping-metadane.xml jest następujący:

<?xml version="1.0" encoding="UTF-8"?>
<lifecycleMappingMetadata>
  <pluginExecutions>
    <pluginExecution>
      <pluginExecutionFilter>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-antrun-plugin</artifactId>
        <versionRange>1.3</versionRange>
        <goals>
          <goal>run</goal>
        </goals>
      </pluginExecutionFilter>
      <action>
        <ignore />
      </action>
    </pluginExecution>
    <pluginExecution>
      <pluginExecutionFilter>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>jaxb2-maven-plugin</artifactId>
        <versionRange>1.2</versionRange>
        <goals>
          <goal>xjc</goal>
        </goals>
      </pluginExecutionFilter>
      <action>
        <ignore />
      </action>
    </pluginExecution>
  </pluginExecutions>
</lifecycleMappingMetadata>

*musiałem ponownie uruchomić Eclipse, aby zobaczyć błędy zniknęły.

 2
Author: aeros,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-07-11 09:08:48

Maven Eclipse (m2e) w wersji 0.12 wszystkie cele cyklu życia Mavena muszą być odwzorowane NA zainstalowane rozszerzenie m2e. W tym przypadku maven-ear-plugin miał nieoznaczony cel default-generate-application-xml.

Możesz wykluczyć nieprzemapowane cele cyklu życia, po prostu postępując zgodnie z instrukcjami tutaj:

Https://wiki.eclipse.org/M2E_plugin_execution_not_covered

Alternatywnie, wystarczy kliknąć prawym przyciskiem myszy na Komunikat o błędzie w Eclipse i wybrać Quick Fix -> Ignore for every pom with such errors.

Należy być ostrożnym, gdy ignorowanie celów cyklu życia: zazwyczaj cele robią coś użytecznego i jeśli skonfigurujesz je tak, aby były ignorowane w Eclipse, możesz pominąć ważne kroki budowania. Warto również rozważyć dodanie wsparcia dla przedłużacza dousznego Maven Eclipse dla niezmapowanego celu cyklu życia.

 1
Author: Ricardo Gladwell,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-06-21 11:12:53

Z mechanizmem wyjaśnionym w odpowiedzi Jana poleciłem wtyczce m2e ignorowanie celu "generate-application-xml". To pozbywa się błędu i wydaje się działać, ponieważ M2E tworzy aplikację.xml.

Więc w zasadzie błąd zmusił nas do podjęcia decyzji, który mechanizm jest odpowiedzialny za generowanie aplikacji.xml, gdy Maven build działa wewnątrz Eclipse pod kontrolą wtyczki M2E. I zdecydowaliśmy, że m2e rządzi.

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-ear-plugin</artifactId>
            <version>2.6</version>
            <configuration>
                <version>6</version>
                <defaultLibBundleDir>lib</defaultLibBundleDir>
            </configuration>
        </plugin>
    </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.apache.maven.plugins</groupId>
                                    <artifactId>maven-ear-plugin</artifactId>
                                    <versionRange>[2.1,)</versionRange>
                                    <goals>
                                        <goal>generate-application-xml</goal>
                                    </goals>
                                </pluginExecutionFilter>
                                <action>
                                    <ignore></ignore>
                                </action>
                            </pluginExecution>
                        </pluginExecutions>
                    </lifecycleMappingMetadata>
                </configuration>
            </plugin>**
        </plugins>
    </pluginManagement>
</build>
 0
Author: StaticNoiseLog,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-04-29 09:15:31

Musisz zrozumieć treść w M2E_plugin_execution_not_covered i wykonaj kroki wymienione poniżej:

  • Wybierz org.zaćmienie.m2e. lifecyclemapping.defaults jar from the Eclipse plugin folder
  • wyodrębnij go i otwórz mapowanie metadanych cyklu życia.xml, gdzie można znaleźć wszystkie pluginExecutions.
  • Dodaj pluginExecutions swoich wtyczek, które są wyświetlane jako błędy z <ignore/> pod znacznikami <action>.

Np: dla błędu write-project-properties, dodaj ten fragment w sekcji <pluginExecutions> mapowania metadanych cyklu życia.plik xml:

 <pluginExecution>
    <pluginExecutionFilter>
       <groupId>org.codehaus.mojo</groupId>
       <artifactId>properties-maven-plugin</artifactId>
       <versionRange>1.0-alpha-2</versionRange>
       <goals>
         <goal>write-project-properties</goal>
       </goals>
    </pluginExecutionFilter>
     <action>
       <ignore />
     </action>
   </pluginExecution>
  • zastąp ten plik XML w JAR
  • Zastąp zaktualizowany JAR w folderze wtyczki Eclipse
  • Restart Eclipse

Nie powinieneś widzieć żadnych błędów w przyszłości dla żadnego projektu.

 0
Author: gowtham,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-08-08 18:49:42

Mimo, że pytanie jest zbyt stare, ale chciałbym podzielić się rozwiązaniem, które zadziałało dla mnie, ponieważ już sprawdziłem wszystko, jeśli chodzi o ten błąd. To był ból, spędziłem dwa dni próbując i na koniec rozwiązanie było:

Aktualizacja wtyczki M2e w eclipse

Clean and build again

 0
Author: William Kinaan,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-07-28 08:52:22