https://github.com/microprofile/microprofile-parent
https://github.com/microprofile/microprofile-parent
Last synced: 5 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/microprofile/microprofile-parent
- Owner: microprofile
- License: apache-2.0
- Created: 2017-11-27T15:08:05.000Z (over 8 years ago)
- Default Branch: main
- Last Pushed: 2026-01-07T11:35:53.000Z (6 months ago)
- Last Synced: 2026-01-11T19:35:31.959Z (6 months ago)
- Size: 13 MB
- Stars: 2
- Watchers: 30
- Forks: 19
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# MicroProfile Parent Repository
The MicroProfile Parent POM provides the required configuration and behavior for all MicroProfile Projects.
## How to use the MicroProfile Parent?
Each MicroProfile project specification expects to follow the folder structure:
- api
- spec
- tck
In the project root POM, use the MicroProfile Parent POM:
```xml
org.eclipse.microprofile
microprofile-parent
${version}
```
The MicroProfile Parent POM provides the following capabilities:
- Code Quality Checks, including LICENSE headers in source files, code formatting, imports, and sort optimization and
Checkstyle validation. Always on by default, can be disabled with `-DskipChecks`
- Automatically generate the source jars
- Automatically generate the Javadocs. Always on by default, can be skipped with `-DskipDocs`
- Automatically generate `pdf` and `html` files from the `src/main/asciidoc` folder.
- Apply the BND configuration if a `bnd.bnd` exists in the root project.
- Handle the required LICENSES to be included in the binaries during development and when performing a release.
- The `tck` module requires an empty `tck` file in `src/main/resources/META-INF/`
- The argument `-Drelease.revision=Final`, replaces the Apache Licenses with Eclipse Foundation Licenses required for
the final binaries
A MicroProfile BOM TCK is also available to align the testing dependencies for the TCK Modules:
```xml
org.eclipse.microprofile
microprofile-tck-bom
${version}
pom
import
```
The `dependencyManagement` section should be placed in the `tck` POM, to avoid leaking test dependencies to other
modules.