2011-12-19 12 views
12

Czy ktoś zdołał skonfigurować plugin findbugs Maven 3.x, aby wygenerować zarówno raport xml, jak i html? (Chcę xml jeden dla Jenkinsa i html dla sprawdzenia przed zatwierdzeniem)Jak wygenerować raport html dla findbugs z Maven 3.x

Widziałem wiele dokumentacji w Internecie na temat konfiguracji, ale większość z nich pojawia się na Maven 2.x, o którym wiem, że jest skonfigurowany inaczej (denerwująco konfiguracja 2.x jest cicho ignorowana przez 3.x). Jestem nowy w Maven, więc nie jestem pewien, czy robię coś źle, czy też podążam za starymi instrukcjami.

Moja pom zawiera następujące elementy:

</build> 
    </plugins> 
     <plugin> 
      <groupId>org.codehaus.mojo</groupId> 
      <artifactId>findbugs-maven-plugin</artifactId> 
      <version>2.3.3</version> 
      <configuration> 
       <!-- findbugs:help -Ddetail=true for outputDirectory: 
        Location where generated html will be created. 
       --> 
       <outputDirectory>${project.build.directory}/findbugs</outputDirectory> 

       <xmlOutput>true</xmlOutput> 
       <findbugsXmlWithMessages>true</findbugsXmlWithMessages> 
       <xmlOutputDirectory>target/findbugs</xmlOutputDirectory> 
       <failOnError>false</failOnError> 
      </configuration> 
     </plugin> 
    </plugins> 
</build> 

Odpowiedz

20

Findbugs-Plugin powinien być w reportPlugins-Część maven-site-plugin.

<build> 
    <plugins> 
    <plugin> 
     <groupId>org.apache.maven.plugins</groupId> 
     <artifactId>maven-site-plugin</artifactId> 
     <configuration> 
     <reportPlugins> 
      <plugin> 
      <groupId>org.codehaus.mojo</groupId> 
      <artifactId>findbugs-maven-plugin</artifactId> 
      </plugin> 
     </reportPlugins> 
     </configuration> 
    </plugin> 
    </plugins> 
</build> 

a dodatkowo findbugs-raport jest generowany tylko wtedy, gdy źródłem jest kompilowany przed uruchomieniem mvn site. Podczas generowania strony używam mvn test site, więc findbugs generują raport.

+0

Idealny. Tylko jedno: do wewnętrznej wtyczki musiałem dodać 2.3.3, aby pozbyć się komunikatu ostrzegawczego maven. Dzięki – Stormcloud

+2

BTW, czy ta reguła może działać w ramach cyklu życia kompilacji? Chciałbym, aby findbugs zawiedzie, jeśli znajdzie coś poważnego (będzie musiał wygenerować raport HTML, abym mógł dowiedzieć się, co poszło nie tak) – Stormcloud

+0

Według strony z wtyczkami, istnieje cel: sprawdź cel, to jest domyślnie powiązana z fazą weryfikacji i pozwala na awarię kompilacji przez dowolny błąd. Ale będzie tylko xml wyjścia z tego celu. – Corubba

3

Sprawdź mój answer dla podobnego pytania, w którym sugeruję użyć transformacji XSLT dostarczanych z Findbugs do generowania raportu HTML podczas wykonywania polecenia mvn clean install.

Powiązane problemy