2014-10-01 6 views
0

Так что я использую CodeNarc как муравьиную задачу в maven.Некоторые правила CodeNarc, бросающие ClassNotFoundException

Для моего настраиваемого набора правил я могу использовать IllegalRegexRule. Однако, когда я пытаюсь добавить что-то еще, я иногда получаю исключение ClassNotFoundException.

Например, когда я добавил это к моему ruleset.xml

<rule class='org.codenarc.rule.formatting.MissingBlankLineAfterPackage'> 
    <property name='priority' value='1'/> 
</rule> 

Я вижу

Не удалось выполнить голевые org.apache.maven.plugins: Maven-antrun-плагин : 1,7: бег (codenarc) по проекту MyProject: Ant BuildException произошло: java.lang.ClassNotFoundException: org.codenarc.rule.formatting.MissingBlankLineAfterPackage

Любой язь почему это будет происходить? Я использую версию 0.18 из codenarc, вот муравей зависимость для CodeNarc:

<dependency> 
    <groupId>org.codenarc</groupId> 
    <artifactId>CodeNarc</artifactId> 
    <version>0.18</version> 
    <exclusions> 
     <exclusion> 
      <groupId>ant</groupId> 
       <artifactId>ant</artifactId> 
     </exclusion> 
    </exclusions> 
</dependency> 

Edit: Эта проблема по-прежнему происходит на версии 0,21

+0

Таким образом, добавление этого же правила MissingBlackLineAfterPackage (доступное начало 0.21) по-прежнему не обнаружено при запуске версии коментария 0.21 или это другое правило, которое не найдено? –

+0

Это происходило в обеих версиях. Однако я забыл добавить «Правило» в конец имени правила. – Inbl

+0

ОК. Обязательно отметьте свой ответ в качестве окончательного ответа. –

ответ

0

Оказывается, я был просто сделать опечатку. Вам необходимо использовать:

<rule class='org.codenarc.rule.formatting.MissingBlankLineAfterPackageRule'> 
    <property name='priority' value='1'/> 
</rule> 

Обратите внимание на «Правило» в конце имени класса.

Смежные вопросы