Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Помогите подружить Maven 3 с FindBugs 2.3.2, Интеграция плагина FindBugs в Maven 
:(
    Опции темы
Fighter
Дата 18.11.2011, 17:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 810
Регистрация: 5.1.2005

Репутация: нет
Всего: 2



Всем привет. Бьюсь с такой вот проблемой. Необходимо интегрировать множество статических анализаторов кода в проект Maven. Чтобы при сборке можно было вызывать плашку с параметрами:
1. Включенные/исключенные директории
2. Выводить отчет/не выводить
3. В каком формате и куда выводить отчет
4. Глубина анализа кода

Вобщем, засада. Ну не хочет интегрироваться  этот зверь и все тут, хоть убейся.
Что вообще я делал и что пробовал:

Стоит Maven с версией 
Код

mvn --version
Apache Maven 3.0.2 (r1056850; 2011-01-09 03:58:10+0300)
Java version: 1.6.0_27, vendor: Sun Microsystems Inc.
Java home: C:\Program Files\Java\jdk1.6.0_27\jre
Default locale: ru_RU, platform encoding: Cp1251
OS name: "windows 7", version: "6.1", arch: "x86", family: "windows"



в файле проекта в депенденсах вроде бы указал все что необходимо...
Код

    <dependencies>
        <dependency>
            <groupId>com.google.protobuf</groupId>
            <artifactId>protobuf-java</artifactId>
            <version>2.3.0</version>
        </dependency>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>3.8.1</version>
            <scope>test</scope>
        </dependency>  
        <dependency>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>findbugs-maven-plugin</artifactId>
            <version>2.3.2</version>
        </dependency>
        <dependency>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-site-plugin</artifactId>
          <version>3.0</version>
        </dependency>
      <dependency>
            <groupId>com.google.code.findbugs</groupId>
            <artifactId>findbugs</artifactId>
            <version>1.3.9</version>
    </dependency>   
</dependencies>


Дальше, использование плашки самой.

в разделе build maven'a
Код

          <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>findbugs-maven-plugin</artifactId>
            <version>2.3.2</version>
            <configuration>
              <threshold>High</threshold>
              <detail>true</detail>
              <effort>Default</effort>
              <findbugsXmlOutput>true</findbugsXmlOutput>
              <xmlOutput>true</xmlOutput>
              <excludeFilterFile>exclude.txt</excludeFilterFile>                        
            </configuration>
          </plugin>



Вобщем, если запускать мавен просто из командной строки для сборки - в логе появляется вот что....
Код

[INFO]
[INFO] --- findbugs-maven-plugin:2.3.2:findbugs (default-cli) @ ProcessingPlatformCommon ---
[INFO] ****** FindBugsMojo execute *******
[INFO] canGenerate is true
[INFO] ****** FindBugsMojo executeFindbugs *******
[INFO] Temp File is D:\Project\DemoProject\ProcessingPlatformCommon\target\findbugsTemp.xml
[INFO] Fork Value is true
     [java] Exception in thread "main" java.io.IOException: Premature end of file.
     [java]     at edu.umd.cs.findbugs.filter.Filter.<init>(Filter.java:128)
     [java]     at edu.umd.cs.findbugs.FindBugs.configureFilter(FindBugs.java:428)
     [java]     at edu.umd.cs.findbugs.FindBugs2.addFilter(FindBugs2.java:311)
     [java]     at edu.umd.cs.findbugs.TextUICommandLine.configureEngine(TextUICommandLine.java:516)
     [java]     at edu.umd.cs.findbugs.FindBugs.processCommandLine(FindBugs.java:319)
     [java]     at edu.umd.cs.findbugs.FindBugs2.main(FindBugs2.java:1054)
     [java] Java Result: 1
[INFO] No bugs found
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 4.538s
[INFO] Finished at: Fri Nov 18 17:35:51 MSK 2011
[INFO] Final Memory: 12M/29M
[INFO] ------------------------------------------------------------------------



а если тоже самое выполняю в каком нибудь например eclipse, то вдобавок ко всему появляется еще и ошибка:

Код

[INFO] ****** FindBugsMojo execute *******
[INFO] canGenerate is true
[INFO] ****** FindBugsMojo executeFindbugs *******
[INFO] Temp File is D:\Project\DemoProject\ProcessingPlatformCommon\target\findbugsTemp.xml
[INFO] Fork Value is true
     [java] java.lang.NoClassDefFoundError: org/apache/bcel/classfile/ClassFormatException
     [java] Caused by: java.lang.ClassNotFoundException: org.apache.bcel.classfile.ClassFormatException
     [java]    at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
     [java]    at java.security.AccessController.doPrivileged(Native Method)
     [java]    at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
     [java]    at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
     [java]    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
     [java]    at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
     [java] Could not find the main class: edu.umd.cs.findbugs.FindBugs2.  Program will exit.
     [java] Exception in thread "main" 
[INFO] No bugs found
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 2.227s
     [java] Java Result: 1
[INFO] Finished at: Fri Nov 18 17:13:28 MSK 2011
[INFO] Final Memory: 14M/35M
[INFO] ------------------------------------------------------------------------


Вызываю данный плагин в мавене командой 
работает только в том случае, если проект предварительно собран (mvn package)
Код

mvn findbugs:findbugs



В сам отчет выводится совершенно непонятная вещь, при том что ошибок пишет не найдено.
Ко нибудь пробовал работать с данной штукой?

PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java tools & IDE's | Следующая тема »


 




[ Время генерации скрипта: 0.1882 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.