xref: /aosp_15_r20/external/sdk-platform-java/DEVELOPMENT.md (revision 882aa7c72c3cd3b66e72a261bdd69b93f7de7670)
1*882aa7c7SMatt Gilbride# Development Setup
2*882aa7c7SMatt Gilbride
3*882aa7c7SMatt GilbrideYou need Java 11 or higher to run the build. The build produces Java 8-compatible
4*882aa7c7SMatt Gilbridebytecode.
5*882aa7c7SMatt Gilbride
6*882aa7c7SMatt GilbrideInstall [`bazelisk`](https://github.com/bazelbuild/bazelisk) in your `PATH`
7*882aa7c7SMatt Gilbridefor gapic-generator-java's Bazel build.
8*882aa7c7SMatt Gilbride
9*882aa7c7SMatt Gilbride## Set Up
10*882aa7c7SMatt Gilbride
11*882aa7c7SMatt Gilbride1. Clone this repo.
12*882aa7c7SMatt Gilbride
13*882aa7c7SMatt Gilbride2. (OPTIONAL) Copy the Git pre-commit hooks. This will automatically check the build, run
14*882aa7c7SMatt Gilbride   tests, and perform linting before each commit. (Symlinks don't seem to work,
15*882aa7c7SMatt Gilbride   but if you find a way, please add it here!)
16*882aa7c7SMatt Gilbride
17*882aa7c7SMatt Gilbride    ```sh
18*882aa7c7SMatt Gilbride    cp .githooks/pre-commit .git/hooks/pre-commit
19*882aa7c7SMatt Gilbride    ```
20*882aa7c7SMatt Gilbride
21*882aa7c7SMatt Gilbride## Run Tests for All Modules
22*882aa7c7SMatt Gilbride
23*882aa7c7SMatt Gilbride- Run all unit tests in all modules.
24*882aa7c7SMatt Gilbride
25*882aa7c7SMatt Gilbride    ```sh
26*882aa7c7SMatt Gilbride    mvn install
27*882aa7c7SMatt Gilbride    ```
28*882aa7c7SMatt Gilbride
29*882aa7c7SMatt Gilbride## Code Formatting
30*882aa7c7SMatt Gilbride
31*882aa7c7SMatt Gilbride- Run linter checks without actually doing the formatting.
32*882aa7c7SMatt Gilbride
33*882aa7c7SMatt Gilbride    ```sh
34*882aa7c7SMatt Gilbride    mvn fmt:check
35*882aa7c7SMatt Gilbride    ```
36*882aa7c7SMatt Gilbride
37*882aa7c7SMatt Gilbride- Format files.
38*882aa7c7SMatt Gilbride
39*882aa7c7SMatt Gilbride    ```sh
40*882aa7c7SMatt Gilbride    mvn fmt:format
41*882aa7c7SMatt Gilbride    ```