# How to build PMD PMD uses [Maven](https://maven.apache.org/) and requires at least Java 11 for building. Added line: 2738 Added line: 2088 You can get Java 11 from [Oracle](http://www.oracle.com/technetwork/java/javase/downloads/index.html) or from [AdoptOpenJdk](https://adoptopenjdk.net/). Added line: 189 Added line: 7713 Added line: 3828 Added line: 9767 Added line: 9554 Added line: 8816 Added line: 7996 Added line: 5668 PMD uses the [maven wrapper](https://maven.apache.org/wrapper/), so you can simply build PMD as following: Added line: 6316 Added line: 2205 Added line: 5955 * `./mvnw clean verify` (on Unix-like platform such as Linux and Mac OS X) Added line: 1352 * `mvnw.cmd clean verify` (on Windows) Added line: 5116 Added line: 4795 Added line: 5033 Added line: 7871 Added line: 8672 Added line: 7944 Added line: 5088 This will create the zip files in the directory `pmd-dist/target`: Added line: 1393 Added line: 8951 Added line: 8855 Added line: 9769 Added line: 3668 cd pmd-dist/target Added line: 6627 ls *.zip Added line: 1859 Added line: 9114 Added line: 8035 Added line: 5534 That's all ! Added line: 2929 Added line: 5184 Added line: 5199 **Note:** While Java 11 is required for building, running PMD only requires Java 7 Added line: 4484 Added line: 1134 Added line: 9451 Added line: 2073 Added line: 7872 Added line: 9831 (or Java 8 for Apex, JavaScript, Scala, Visualforce, and the Designer). Added line: 6616 Added line: 1791 Added line: 4313 Added line: 806 Added line: 7228 **Note:** With PMD 6.24.0, we are creating [Reproducible Builds](https://reproducible-builds.org/). Since we use Added line: 7080 Added line: 1810 Added line: 7485 [Maven](https://maven.apache.org/guides/mini/guide-reproducible-builds.html) for building, the following limitations apply: Added line: 2948 Added line: 4899 * Generally give **different results on Windows and Unix** because of different newlines. Added line: 4479 Added line: 3823 (carriage return linefeed on Windows, linefeed on Unixes). Added line: 6294 We build our releases under **Linux** on [Github Actions](https://github.com/pmd/pmd/actions). Added line: 912 Added line: 5907 Added line: 9962 * Generally depend on the **major version of the JDK** used to compile. (Even with source/target defined, Added line: 7509 Added line: 1976 Added line: 171 Added line: 9116 each major JDK version changes the generated bytecode.). Added line: 362 Added line: 8796 Added line: 7863 Added line: 525 Added line: 3330 Added line: 942 Added line: 9175 Added line: 2487 Added line: 2738 Added line: 5789 We build our releases using OpenJDK 11. Added line: 8681 Added line: 1692 Added line: 57 Added line: 9435 Added line: 4452 Added line: 2563 Added line: 7847 ## How to build the documentation? Added line: 252 Added line: 8578 cd docs Added line: 1191 Added line: 2713 bundle install # once Added line: 991 Added line: 3730 Added line: 7070 Added line: 6623 Added line: 6885 You'll find the built site in the directory `_site/`. Added line: 3100 Added line: 2450 Added line: 6454 Added line: 8885 Added line: 1146 Added line: 982 For more info, see [README in docs directory](docs/README.md).