[core] Support reproducible builds #2444
1.7 KiB
How to build PMD
PMD uses Maven and requires at least Java 11 for building. You can get Java 11 from Oracle or from AdoptOpenJdk.
PMD uses the maven wrapper, so you can simply build PMD as following:
./mvnw clean verify
(on Unix-like platform such as Linux and Mac OS X)mvnw.cmd clean verify
(on Windows)
This will create the zip files in the directory pmd-dist/target
:
cd pmd-dist/target
ls *.zip
That's all !
Note: While Java 11 is required for building, running PMD only requires Java 7 (or Java 8 for Apex and the Designer).
Note: With PMD 6.24.0, we are creating Reproducible Builds. Since we use Maven for building, the following limitations apply:
-
Generally give different results on Windows and Unix because of different newlines. (carriage return linefeed on Windows, linefeed on Unixes).
We build our releases under Linux on Travis CI.
-
Generally depend on the major version of the JDK used to compile. (Even with source/target defined, each major JDK version changes the generated bytecode.).
We build our releases using OpenJDK 11 (see "before_install" step in
.travis.yml
).
How to build the documentation?
cd docs
bundle install # once
bundle exec jekyll build
You'll find the built site in the directory _site/
.
For more info, see README in docs directory.