You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Andrew Purtell (JIRA)" <ji...@apache.org> on 2014/09/09 02:20:28 UTC

[jira] [Issue Comment Deleted] (HBASE-11912) Catch some bad practices at compile time with error-prone

     [ https://issues.apache.org/jira/browse/HBASE-11912?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Andrew Purtell updated HBASE-11912:
-----------------------------------
    Comment: was deleted

(was: 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)