[ 
https://issues.apache.org/jira/browse/HBASE-11912?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14126275#comment-14126275
 ] 

Andrew Purtell commented on HBASE-11912:
----------------------------------------

This would have been a nice idea but as usual I find Maven completely fucking 
broken. 

We have to exclude **/generated/*.java files because protobuf classes trigger 
StaticAccessedFromInstance, which is an error.

Attached patch attempts to do this by creating to compiler invocations 
following the recipe here: 
https://maven.apache.org/guides/mini/guide-default-execution-ids.html#Example:_Configuring_compile_to_run_twice
 

This works nicely for the hbase-protocol module.

This inexplicably does not work for the hbase-server module. The excludes 
directive on default-compile is simply ignored no matter what I do, even 
pasting the build profile changes into the hbase-server pom. 

So fuck it

> Catch some bad practices at compile time with error-prone
> ---------------------------------------------------------
>
>                 Key: HBASE-11912
>                 URL: https://issues.apache.org/jira/browse/HBASE-11912
>             Project: HBase
>          Issue Type: Improvement
>            Reporter: Andrew Purtell
>         Attachments: HBASE-11912.patch
>
>
> Google's error-prone (https://code.google.com/p/error-prone/) wraps javac 
> with some additional static analysis that will generate additional warnings 
> or errors at compile time if certain bug patterns 
> (https://code.google.com/p/error-prone/wiki/BugPatterns) are detected. What's 
> nice about this approach, as opposed to findbugs, is the compile time 
> detection and erroring out prevent the detected problems from getting into 
> the codebase up front.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to