tag | f406637e3360ce43c311c78c35ae466ac6c15290 | |
---|---|---|
tagger | The Android Open Source Project <initial-contribution@android.com> | Tue Sep 08 14:58:11 2020 -0700 |
object | 2871c29888513e14727bcc9871a41533877d05ec |
Android VTS 11.0 Release 1 (RP1A.200720.010)
commit | 2871c29888513e14727bcc9871a41533877d05ec | [log] [tgz] |
---|---|---|
author | android-build-team Robot <android-build-team-robot@google.com> | Wed Apr 22 01:14:29 2020 +0000 |
committer | android-build-team Robot <android-build-team-robot@google.com> | Wed Apr 22 01:14:29 2020 +0000 |
tree | 69bfd483cb448c64bf752a5028b1c11cc5674715 | |
parent | d1e2f41ed7ec17592d1a313d408d76fb7693720f [diff] | |
parent | c3dc70d161aebf451f48f8a7327493ea29640154 [diff] |
Snap for 6416172 from c3dc70d161aebf451f48f8a7327493ea29640154 to rvc-release Change-Id: I31cab741143a5d02eb8942277f51b847ca715f65
Guava is a set of core libraries that includes new collection types (such as multimap and multiset), immutable collections, a graph library, functional types, an in-memory cache, and APIs/utilities for concurrency, I/O, hashing, primitives, reflection, string processing, and much more!
Guava comes in two flavors.
android
directory.Guava's Maven group ID is com.google.guava
and its artifact ID is guava
. Guava provides two different "flavors": one for use on a (Java 8+) JRE and one for use on Android or Java 7 or by any library that wants to be compatible with either of those. These flavors are specified in the Maven version field as either 27.1-jre
or 27.1-android
. For more about depending on Guava, see using Guava in your build.
To add a dependency on Guava using Maven, use the following:
<dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> <version>27.1-jre</version> <!-- or, for Android: --> <version>27.1-android</version> </dependency>
To add a dependency using Gradle:
dependencies { compile 'com.google.guava:guava:27.1-jre' // or, for Android: api 'com.google.guava:guava:27.1-android' }
Snapshots of Guava built from the master
branch are available through Maven using version HEAD-jre-SNAPSHOT
, or HEAD-android-SNAPSHOT
for the Android flavor.
APIs marked with the @Beta
annotation at the class or method level are subject to change. They can be modified in any way, or even removed, at any time. If your code is a library itself (i.e. it is used on the CLASSPATH of users outside your own control), you should not use beta APIs, unless you repackage them. If your code is a library, we strongly recommend using the Guava Beta Checker to ensure that you do not use any @Beta
APIs!
APIs without @Beta
will remain binary-compatible for the indefinite future. (Previously, we sometimes removed such APIs after a deprecation period. The last release to remove non-@Beta
APIs was Guava 21.0.) Even @Deprecated
APIs will remain (again, unless they are @Beta
). We have no plans to start removing things again, but officially, we're leaving our options open in case of surprises (like, say, a serious security problem).
Guava has one dependency that is needed at runtime: com.google.guava:failureaccess:1.0
Serialized forms of ALL objects are subject to change unless noted otherwise. Do not persist these and assume they can be read by a future version of the library.
Our classes are not designed to protect against a malicious caller. You should not use them for communication between trusted and untrusted code.
For the mainline flavor, we unit-test the libraries using only OpenJDK 1.8 on Linux. Some features, especially in com.google.common.io
, may not work correctly in other environments. For the Android flavor, our unit tests run on API level 15 (Ice Cream Sandwich).