plovr is a build tool that dynamically recompiles JavaScript and Closure Template code. It is designed to simplify Closure development, and to make it more enjoyable.
Plovr requires Java 7 or higher.
You can find Plovr JARs for download on the Releases page
The Plovr build requires the Java Development Kit (JDK) 7 or higher, Buck, and zip
.
When following the Buck installation instructions, double-check that you are following the instructions for building Java projects and for your operating system. If you have trouble installing Buck (which can be non-trivial on Windows), please contact the Buck team.
To test:
buck fetch ...
buck test
To build:
buck fetch ...
buck build plovr
The output of the build will be in buck-out/gen/plovr.jar
.
If you want to build plovr without installing Buck on your local machine, we have a Docker container with Buck installed.
The Plovr build is split into two Dockerfiles:
- Dockerfile builds and tests Plovr
- Dockerfile.base builds Buck and Plovr's dependencies
To test:
docker build .
downloads the plovr-deps container from docker, adds Plovr source, and runs all the Plovr tests.
If you want to build plovr-deps
yourself:
docker build -t nicks/plovr-deps -f Dockerfile.base .
To upgrade one of Closure Library, go to the official repo and find the SHA digest of the commit you want to sync to. Then run.
scripts/update-closure-library.sh sha-digest
Sometimes this doesn't work because git subtree
is buggy. If nothing updates, try running:
scripts/update-closure-library.sh master
git reset --hard origin/master
scripts/update-closure-library.sh sha-digest
This will bully git subtree
into shape.
The Closure Compiler, Template, and Spreadsheets depenencies are managed with Maven.
Follow the instructions in third-party/README.md.