Dockerfile Maven Support

A set of Maven tools for dealing with Dockerfiles

License

License

Categories

Categories

Maven Build Tools Docker Container Virtualization Tools
GroupId

GroupId

ca.vanzyl
ArtifactId

ArtifactId

dockerfile-maven
Last Version

Last Version

1.4.19
Release Date

Release Date

Type

Type

pom
Description

Description

Dockerfile Maven Support
A set of Maven tools for dealing with Dockerfiles
Project URL

Project URL

https://github.com/spotify/dockerfile-maven

Download dockerfile-maven

How to add to project

<!-- https://jarcasting.com/artifacts/ca.vanzyl/dockerfile-maven/ -->
<dependency>
    <groupId>ca.vanzyl</groupId>
    <artifactId>dockerfile-maven</artifactId>
    <version>1.4.19</version>
    <type>pom</type>
</dependency>
// https://jarcasting.com/artifacts/ca.vanzyl/dockerfile-maven/
implementation 'ca.vanzyl:dockerfile-maven:1.4.19'
// https://jarcasting.com/artifacts/ca.vanzyl/dockerfile-maven/
implementation ("ca.vanzyl:dockerfile-maven:1.4.19")
'ca.vanzyl:dockerfile-maven:pom:1.4.19'
<dependency org="ca.vanzyl" name="dockerfile-maven" rev="1.4.19">
  <artifact name="dockerfile-maven" type="pom" />
</dependency>
@Grapes(
@Grab(group='ca.vanzyl', module='dockerfile-maven', version='1.4.19')
)
libraryDependencies += "ca.vanzyl" % "dockerfile-maven" % "1.4.19"
[ca.vanzyl/dockerfile-maven "1.4.19"]

Dependencies

There are no dependencies for this project. It is a standalone project that does not depend on any other jars.

Project Modules

  • extension
  • plugin

foss-root

A root pom for configuring common release related plugins for open source maven projects.

Usage

There's still some boilerplate that has to go into your project pom.xml. Use the template below.

<project>
  <parent>
    <groupId>com.spotify</groupId>
    <artifactId>foss-root</artifactId>
    <version>LATEST-VERSION</version>
  </parent>
  
  <artifactId>YOUR_ARTIFACT_NAME</artifactId>
  <version>VERSION-SNAPSHOT</version>
  
  <licenses>
    <license>
      <name>The Apache Software License, Version 2.0</name>
      <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
      <distribution>repo</distribution>
    </license>
  </licenses>
  
  <developers>
    <developer>
      ...
    </developer>
  </developers>
  
  <scm>
    <url>https://github.com/spotify/YOUR_REPO</url>
    <connection>scm:git:[email protected]:spotify/YOUR_REPO.git</connection>
    <developerConnection>scm:git:[email protected]:spotify/YOUR_REPO.git</developerConnection>
    <tag>HEAD</tag>
  </scm>
  
  <build>
    <plugins>
      <plugin>
        <artifactId>maven-checkstyle-plugin</artifactId>
      </plugin>
      <plugin>
        <artifactId>maven-enforcer-plugin</artifactId>
      </plugin>
      <plugin>
        <artifactId>maven-failsafe-plugin</artifactId>
      </plugin>
    </plugins>
  </build>
 </project>

By default your project will target Java 8. If you don't need Java 8 compatibility and you would like to target a later version of Java, set the maven.compiler.release property in your project, like so:

<properties>
  <maven.compiler.release>11</maven.compiler.release>
</properties>

After setting this up, you'll be able to

add license headers to all sources

mvn license:update-file-header

deploy snapshots

mvn deploy

deploy releases

mvn release:prepare
mvn release:perform
ca.vanzyl

Spotify

Versions

Version
1.4.19
1.4.18
1.4.17
1.4.16
1.4.15
1.4.14