Usage

To use the reqstool Maven Plugin, add the following configuration to your Maven project’s pom.xml:

Basic Usage

<build>
    <plugins>
        <plugin>
            <groupId>io.github.reqstool</groupId>
            <artifactId>reqstool-maven-plugin</artifactId>
            <version>1.0.4</version>
            <executions>
                <execution>
                    <goals>
                        <goal>assemble-and-attach-zip-artifact</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>

The plugin will automatically integrate with the standard Maven build lifecycle.

Annotation Dependency

To use @Requirements and @SVCs annotations in your code, add the annotations dependency:

<dependencies>
    <dependency>
        <groupId>io.github.reqstool</groupId>
        <artifactId>reqstool-java-annotations</artifactId>
        <version>1.0.4</version>
    </dependency>
</dependencies>

Running Manually

The goal can be invoked manually:

mvn reqstool:assemble-and-attach-zip-artifact

Available Goals

assemble-and-attach-zip-artifact

Main goal that:

  • Bound to the verify phase (ensures tests have run)

  • Combines annotation files

  • Assembles ZIP artifact

  • Attaches artifact for deployment

Default Lifecycle

The plugin automatically integrates into the standard Maven build:

  1. Plugin is configured with an execution binding

  2. The assemble-and-attach-zip-artifact goal runs during verify phase

  3. Goal runs after all tests complete (Surefire and Failsafe)

  4. ZIP artifact is created in target/reqstool/

  5. Artifact is attached for deployment to Maven repositories

The ZIP artifact will be published with classifier reqstool (e.g., my-app-1.0.0-reqstool.zip).