hadoop common 下的兩個類 InterfaceAudience ,InterfaceStability ;
InterfaceAudience 有三個抽象方法,主要用於說明使用的範圍
/**
* Intended for use by any project or application. 在任務項目或應用中可使用
*/
@InterfaceAudience.Public
/**
* Intended only for the project(s) specified in the annotation.
* For example, "Common", "HDFS", "MapReduce", "ZooKeeper", "HBase".
* 只能用在指定的項目中如"Common", "HDFS", "MapReduce", "ZooKeeper", "HBase"
*/
@InterfaceAudience.LimitedPrivate
/**
* Intended for use only within Hadoop itself. 只能在hadoop本身項目中使用
*/
@InterfaceAudience.Private
InterfaceStability 有三個抽象方法,主要用於說明版本的穩定性,及有特定包的依賴
/**
* Can evolve while retaining compatibility for minor release boundaries.;
* can break compatibility only at major release (ie. at m.0). 主版本是穩定的,不同主版本間可能不兼容
*/
@InterfaceStability.Stable
/**
* Evolving, but can break compatibility at minor release (i.e. m.x) 不斷變化,不同次版本間可能不兼容
*/
@InterfaceStability.Evolving
/**
* No guarantee is provided as to reliability or stability across any 不能提供穩定性和可靠性
* level of release granularity.
*/
@InterfaceStability.Unstable