https://github.com/moditect/moditect-org-parent
Parent POM for ModiTect projects
https://github.com/moditect/moditect-org-parent
Last synced: 5 months ago
JSON representation
Parent POM for ModiTect projects
- Host: GitHub
- URL: https://github.com/moditect/moditect-org-parent
- Owner: moditect
- License: apache-2.0
- Created: 2021-02-10T18:37:06.000Z (over 5 years ago)
- Default Branch: main
- Last Pushed: 2024-04-09T11:46:40.000Z (about 2 years ago)
- Last Synced: 2025-07-05T08:16:07.650Z (11 months ago)
- Size: 105 KB
- Stars: 0
- Watchers: 3
- Forks: 2
- Open Issues: 1
-
Metadata Files:
- Readme: README.adoc
- License: LICENSE.txt
Awesome Lists containing this project
README
= moditect-org-parent
:project-owner: moditect
:project-name: moditect-org-parent
:project-groupId: org.moditect
:project-artifactId: moditect-org-parent
image:https://github.com/{project-owner}/{project-name}/workflows/Build/badge.svg["Build Status", link="https://github.com/{project-owner}/{project-name}/actions"]
image:https://img.shields.io/maven-central/v/{project-groupId}/{project-artifactId}.svg[Download, link="https://search.maven.org/#search|ga|1|g:{project-groupId} AND a:{project-artifactId}"]
---
Parent POM for all Maven based ModiTect projects.
== Profiles
The parent POM enables the following profiles on itself and its children:
* `publication`: generates sources and javadoc JARs.
* `gpg`: signs all attached artifacts.
* `local-deploy`: deploys all artifacts to a target directory defined by `${local.repository.path}`
The parent POM enables the following profiles on itself alone:
* `jreleaser`: creates a GitHub release with changelog.
== Requirements
Children projects must define values for the following properties
Given a project named `foo` located at `moditect/foo`:
[source,xml]
[subs="verbatim"]
----
foo
moditect/foo
1.8
1.8
1.8
----
== Constraints
The `` block must be defined explicitly at the root of the child project, otherwise the URLs will be set to the wrong
paths. Given a project named `foo` located at `moditect/foo`:
[source,xml]
[subs="verbatim"]
----
scm:git:${repository.url}
scm:git:${repository.url}
${repository.url}
HEAD
----
The `license-maven-plugin` must be defined at the root of the child in order to find the license header template at the
right location
[source,xml]
[subs="verbatim"]
----
com.mycila
license-maven-plugin
${maven.multiModuleProjectDirectory}/etc/license.txt
true
README.md
LICENSE.txt
mvnw
mvnw.cmd
.mvn/wrapper/maven-wrapper.properties
.mvn/wrapper/MavenWrapperDownloader.java
...
----
Format license headers by invoking
```sh
$ mvn initialize license:format
```
== Release
Releases are triggered by using the `Release` workflow which updates the version number, creates the tag, and pushes the new tag.