* Proguard中的vs vs vs vs ***?

Proguard中的******通配符有什么区别? 例如:

 -keep class com.mypackage.* 

VS

 -keep class com.mypackage.** 

VS

 -keep class com.mypackage.*** 

Solutions Collecting From Web of "* Proguard中的vs vs vs vs ***?"

 * matches any part of a method name. OR matches any part of a class name not containing the package separator. ** matches any part of a class name, possibly containing any number of package separators. *** matches any type (primitive or non-primitive, array or non-array). 

请注意 ,和*通配符永远不会匹配原始types。 此外,只有*通配符将匹配任何维度的数组types。 例如,“ get *()”匹配"java.lang.Object getObject()" ,但不包含"float getFloat()""java.lang.Object[] getObjects()"

 * matches any part of a filename not containing the directory separator. ** matches any part of a filename, possibly containing any number of directory separators.