Mam dwa projekty Maven:Wiadomości z Diagnostic.Kind.NOTE poziomu (i innych) na procesorach adnotacji
- Pierwszy definiuje adnotacji, procesor adnotacji oraz plik konfiguracyjny-dostawca, aby uruchomić procesor adnotacji za pośrednictwem interfejsu ServiceLoader API.
- Innym zależy na pierwszym i określa pewne klas i interfejsów, a jednym z nich jest opatrzone adnotacją określonej w pierwszym projekcie.
Przywołuję kompilację drugiego projektu (po zbudowaniu i zainstalowaniu pierwszego) z numerem mvn clean && mvn compile
, aby upewnić się, że nastąpi kompilacja i zostanie uruchomione przetwarzanie adnotacji. Działa zgodnie z oczekiwaniami: prosty procesor annontacji po prostu generuje plik zasobów w katalogu target/classes/
zawierający jakieś fałszywe dane.
Podczas próby wyprowadzenia niektórych informacji za pomocą processingEnv.getMessager().printMessage(...)
zacząłem mieć pewne problemy. Jeśli użyję Diagnostic.Kind.ERROR
, kompilacja zatrzyma się i wydrukuje komunikat, jak można się spodziewać. Jednakże, z każdym innym Kind
(takim jak NOTE
lub WARNING
), wiadomość nie jest zapisana na ekranie!
Niektóre informacje o moim otoczeniu:
Kubuntu 12.10
Linux 3.5.0-17-generic
Apache Maven 3.0.4 (r1232337; 2012-01-17 06:44:56-0200)
Java version: 1.7.0_09, vendor: Oracle Corporation
nie jawnie zadeklarować wersję maven-compiler-plugin
wszędzie, więc musi być używana wersja domyślnego (? 2.3.2 nie jestem pewien).
Jak włączyć wyjście wszystkich Kind
s wiadomości w tej konfiguracji? (tzn. uruchomienie procesora annumentacji przez maven)
Próbowałem POM obiekt ' true ' a także pracował. –