https://github.com/smallrye/smallrye-maven-plugin
https://github.com/smallrye/smallrye-maven-plugin
Last synced: 8 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/smallrye/smallrye-maven-plugin
- Owner: smallrye
- License: apache-2.0
- Archived: true
- Created: 2019-07-23T13:21:19.000Z (over 6 years ago)
- Default Branch: main
- Last Pushed: 2023-07-08T06:51:27.000Z (over 2 years ago)
- Last Synced: 2025-05-10T03:47:57.089Z (8 months ago)
- Language: Java
- Homepage:
- Size: 46.9 KB
- Stars: 0
- Watchers: 4
- Forks: 5
- Open Issues: 0
-
Metadata Files:
- Readme: README.adoc
- License: LICENSE
- Codeowners: CODEOWNERS
Awesome Lists containing this project
README
:ci: https://github.com/smallrye/smallrye-maven-plugin/actions?query=workflow%3A%22SmallRye+Build%22
image:https://github.com/smallrye/smallrye-maven-plugin/workflows/SmallRye%20Build/badge.svg?branch=main[link={ci}]
image:https://img.shields.io/github/license/smallrye/smallrye-maven-plugin.svg["License", link="http://www.apache.org/licenses/LICENSE-2.0"]
image:https://img.shields.io/maven-central/v/io.smallrye/smallrye-maven-plugin?color=green[]
= SmallRye Maven Plugin
== About
The SmallRye Maven Plugin is a project which aims to provide some automation that
can be utilized by SmallRye implementation projects in order to perform common
tasks.
== Features
=== Goal: `generate-info`
The `generate-info` goal generates a class in the base package of your project which
gives version information about that project. The following configuration parameters
are supported:
* `specVersion` (required) - The specification version being implemented
by this project. In many cases you can directly set this to the value of the property
containing the MicroProfile/Jakarta/etc. spec artifact version.
* `implementationVersion` (required, defaults to `${project.version}`) - The implementation
version.
* `packageName` (required) - The name of the base package into which the class should be generated.
Typically this is something like `io.smallrye.projectname`.
* `className` (required, defaults to `SmallRyeInfo`) - The name of the class to generate. Normally
this should be left to the default value.
* `sourceOutput` (required, defaults to `${project.build.directory}/generated-sources/smallrye-info`) -
This property determines where the generated sources are written. The directory named by this
property will automatically be added to the project as a source root.
== Usage
This plugin is intended to be consumed by SmallRye projects (not end user programs).
To include the plugin in a project, add the following plugin definition to the project POM:
.POM snippet
[source,xml]
io.smallrye
smallrye-maven-plugin
See above for information about the available goals and their configuration parameters.
The SmallRye parent POM (https://github.com/smallrye/smallrye-parent) should normally be inherited,
which will configure the correct version of this plugin.
=== Example
.POM example
[source,xml]
io.smallrye
smallrye-maven-plugin
generate-info
io.smallrye.projectname
${version.eclipse.microprofile.projectname}