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

Matthew Foley commented on HBASE-24482:
---------------------------------------

Interesting, grepping the branch-2.3 of HBase, I see the poms do _not_ mention 
edu.umd.cs.findbugs.annotations, and _do_ mention javax.annotation.  BUT there 
are still scads of uses of edu.umd.cs.findbugs.annotations in java files.  The 
tag 2.1.6RC1 has the same behavior.  So I infer that the 
edu.umd.cs.findbugs.annotations package was being pulled in by an indirect 
dependency, and either an assembly or a shadowing somewhere along the line 
changed since 2.1.6.

> [hbase-operator-tools] build of hbck2 fails with HBase branch-2.3, due to 
> missing edu.umd.cs.findbugs.annotations dependency
> ----------------------------------------------------------------------------------------------------------------------------
>
>                 Key: HBASE-24482
>                 URL: https://issues.apache.org/jira/browse/HBASE-24482
>             Project: HBase
>          Issue Type: Bug
>          Components: hbase-operator-tools
>    Affects Versions: hbase-operator-tools-1.1.0
>            Reporter: Matthew Foley
>            Priority: Major
>         Attachments: HBASE-24482_compile_error.log
>
>
> If we do a local build of the current HBase branch-2.3 as version 
> 2.3.0-SNAPSHOT, and 'mvn install' it in the local maven repository, 
> then attempt to build hbase-operator-tools master branch, with 
> -Dhbase.version=2.3.0-SNAPSHOT, 
> the HBCK2 class file HBCKMetaTableAccessor.java (line 25) fails to compile 
> with error: "package edu.umd.cs.findbugs.annotations does not exist", 
> followed by multiple instances of missing "symbol: class Nullable".  (A 
> longer log extract is attached.)
> It would appear the default HBase version 2.1.6 made this dependency package 
> available in some manner, but the newer HBase does not.
> If the @Nullable annotation is still needed, it may be sufficient to simply 
> add it to the hbase-operator-tools pom.xml file, so maven will load it.  
> However, it is actually deprecated in the current documentation for 
> edu.umd.cs.findbugs.annotations. Various commentary online suggest that we 
> should be using the similar jsr305.jar (*{{javax.annotation)}}* instead; see 
> eg
>  * 
> [https://stackoverflow.com/questions/4963300/which-notnull-java-annotation-should-i-use]
>  Does anyone know if that was HBase's approach?



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to