Introduce DexJavaLibraryIfItContainsClassFiles Buildable. Summary: `DexJavaLibraryIfItContainsClassFiles` is a `Buildable` that takes the output of a `JavaLibraryRule` and and dexes it, assuming the output of the `JavaLibraryRule` contains `.class` files. It relies on an `AccumulateClassNames` to determine whether there are `.class` files to dex. Once `DexJavaLibraryIfItContainsClassFiles` has the path to the classes file, it uses a `FileExistsAndIsNotEmptyStep` combined with a `ConditionalStep` to make sure that the list of `.class` files is non-empty before running the `DxStep` because `dx` will fail if it is run on input that does not contain any `.class` files. Test Plan: Sandcastle builds.
Buck is an Android build tool. To see what Buck can do for you, check out the documentation at http://facebook.github.io/buck/.
To build Buck, run the following:
git clone git@github.com:facebook/buck.git cd buck ant ./bin/buck --help
Apache License 2.0