2017-02-27 63 views
0

我想禁止在项目中使用一些注释。特别是@SneakyThrows注释从lombok。 这样做的一种方式是在构建maven工件时失败。 是否有一些现有的插件来达到这个目标?如何使用注释使Maven构建失败?

我认为有可能使用静态代码分析器,如checkstyle来实现。但我不想为它写新的规则。

另外它是有趣的,如果存在这样的插件gradle?

回答

0
 <plugin> 
      <groupId>com.google.code.maven-replacer-plugin</groupId> 
      <artifactId>replacer</artifactId> 
      <version>1.5.3</version> 
      <executions> 
       <execution> 
        <phase>process-sources</phase> 
        <goals> 
         <goal>replace</goal> 
        </goals> 
       </execution> 
      </executions> 
      <configuration> 
       <basedir>${basedir}</basedir> 
       <includes> 
        <include>target/**/*.java</include> 
       </includes> 
       <regex>false</regex> 
       <replacements> 
        <replacement> 
         <token>@SneakyThrows</token> 
         <value>@@@@ I-DONT-THINK-SO @@@@</value> 
        </replacement> 
       </replacements> 
      </configuration> 
     </plugin> 
+0

我用这实际上通过注释用'@SurpressWarnings每类/枚举/接口(“全部”)' – john16384

+0

这是一个纯文本替换的方法来杀死产生源的警告?它是否会产生可理解的错误消息?它是否更改用户目录中的文件? –

+0

因此编译阶段将失败。好的,它应该可以工作,但是这个插件不会失败,也不会产生任何消息错误。不管怎样,谢谢! – olegtarapata