Skip to content

mkeesey/guava-for-small-classpaths

Repository files navigation

Guava for Small Classpaths: Google Core Libraries for Java with modifications for JVMs with limited classpaths.

Guava targets (very reasonably) JVMs like OpenJDK that include the standard Java standard classpath. As as result Google takes advantage of classes within the standard classpath that minimal VMs don't include for executable sizing reasons. Concepts like the EventBus don't fundamentally require concurrency but their current implementions mandate it which this project seeks to eliminate. These goals don't really help Google with their use cases which is why this is more of a fork than an attempt to contribute code to the main Guava code base.

This fork is currently based on the 12.0 version of Google Guava.
=====================================

Requires JDK 1.6 or higher for many of the classes as this is based on the 12.0 release of Guava from Google. So far this project has focused on breaking EventBus' dependency on ConcurrentHashMap and other classes within java.util.concurrent for use cases when you need a simple single-threaded event bus structure.

Project page:
 https://github.com/mkeesey/guava-for-small-classpaths

--------------------------------------------------------------------
Original Google info
--------------------------------------------------------------------

Project page:
  http://guava-libraries.googlecode.com

Report a defect or feature request here:
  http://code.google.com/p/guava-libraries/issues/entry

Ask "how-to" and "why-didn't-it-work" questions at:
  http://www.stackoverflow.com/questions/ask (use the "guava" tag)

For open-ended questions and discussion:
  http://groups.google.com/group/guava-discuss

Subscribe to project updates in your feed reader:
  http://code.google.com/feeds/p/guava-libraries/updates/basic

IMPORTANT WARNINGS
------------------

1. 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 (e.g. using ProGuard).

2. Deprecated non-beta APIs will be removed eighteen months after the
release in which they are first deprecated. You must fix your
references before this time. If you don't, any manner of breakage
could result (you are not guaranteed a compilation error).

3. Serialized forms of ALL objects are subject to change. Do not
persist these and assume they can be read by a future version of the
library.

4. Our classes are not designed to protect against a malicious caller.
You should not use them for communication between trusted and
untrusted code.

5. We unit-test and benchmark the libraries using only OpenJDK 1.6 on
Linux. Some features, especially in com.google.common.io, may not work
correctly in other environments.

About

a fork of Google's Guava project with some simplified dependencies for running on JVMs with limited concurrency support in their classpaths.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages