rvenutolo / groovy-project-parent

A collection of POMs and resources for my Groovy projects.

Home Page:https://rvenutolo.github.io/groovy-project-parent/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

groovy-project-parent

Build Status Quality Gate License GitHub release

A project containing a few POMs intended as parent POMs for my Groovy projects, plus a resources bundle.

Maven Central Dependency Status

  • Top-level parent POM.
  • Provides a number of properties that define plugin versions, Groovy and Spock versions, and some other configuration values.
  • Provides dependency and plugin versions in dependencyManagement and pluginManagement elements. All versions can be overridden in child POMs by overwriting a property value.
  • Provides a snapshot repository in distributionManagement.
  • Has one configured build plugin, sortpom-maven-plugin, to sort this POM and all inheriting POMs.
<parent>
    <groupId>org.venutolo</groupId>
    <artifactId>groovy-project-parent</artifactId>
    <version>1.1.0</version>
</parent>

Maven Central Dependency Status

  • Child of groovy-project-parent.
  • Provides default configurations for the plugins defined in the parent POM's pluginManagement section.
  • Does not define any further build plugins.
<parent>
    <groupId>org.venutolo</groupId>
    <artifactId>groovy-project-parent-with-config</artifactId>
    <version>1.1.0</version>
</parent>

Maven Central Dependency Status

  • Child of groovy-project-parent-with-config.
  • Provides a default build configuration with plugin configurations inherited from groovy-project-parent-with-config.
  • Provides a default site build configuration.
  • Provides a default release profile that adds GPG artifact signing and deploying to OSSRH to the build.
<parent>
    <groupId>org.venutolo</groupId>
    <artifactId>groovy-project-parent-with-build</artifactId>
    <version>1.1.0</version>
</parent>

Maven Central Dependency Status

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-remote-resources-plugin</artifactId>
    <executions>
        <execution>
            <id>get-project-resources</id>
            <goals>
                <goal>process</goal>
            </goals>
            <phase>generate-resources</phase>
            <configuration>
                <resourceBundles>
                    <resourceBundle>org.venutolo:groovy-project-resources:${groovy.project.resources.version}</resourceBundle>
                </resourceBundles>
            </configuration>
        </execution>
        <execution>
            <id>get-site-resources</id>
            <goals>
                <goal>process</goal>
            </goals>
            <phase>pre-site</phase>
            <configuration>
                <resourceBundles>
                    <resourceBundle>org.venutolo:groovy-project-resources:${groovy.project.resources.version}</resourceBundle>
                </resourceBundles>
            </configuration>
        </execution>
    </executions>
</plugin>

Make Release

./mvnw "-Darguments=-Dassembly.skipAssembly -Dmaven.source.skip" -B release:clean release:prepare release:perform

Update Maven Wrapper

Use Maven Wrapper plugin

mvn -N io.takari:maven:wrapper -Dmaven=3.5.0

Download latest scripts

wget https://raw.githubusercontent.com/takari/maven-wrapper/master/mvnw
wget https://raw.githubusercontent.com/takari/maven-wrapper/master/mvnw.cmd

About

A collection of POMs and resources for my Groovy projects.

https://rvenutolo.github.io/groovy-project-parent/

License:Apache License 2.0


Languages

Language:Shell 48.8%Language:Batchfile 38.3%Language:Groovy 13.0%