SoftwareEntwicklung Beratung Schulung

A coders, hackers heaven.....Hm...I do not think so...

Apache Software Foundation Parent POM Version 21 Released

The Apache Maven team is pleased to announce the release of the Apache Software Foundation Parent POM Version 21.

You should specify the version in your project as parent like the following:

1
2
3
4
5
<parent>
   <groupId>org.apache</groupId>
   <artifactId>apache</artifactId>
   <version>21</version>
</parent>

You can download the appropriate sources etc. from the download page:

https://maven.apache.org/pom/asf/download.html

Spring Boot Starter Parent Usage in Maven

I quite often see Spring Boot projects which are using the spring-boot-starter-parent as the following:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>

  <parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.0.4.RELEASE</version>
    <relativePath/>
  </parent>

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
    <java.version>1.8</java.version>
  </properties>
  ...
  <build>
    <plugins>
      <plugin>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-maven-plugin</artifactId>
      </plugin>
    </plugins>
  </build>
</project>

So far so good. Notices something? I have to mention that you can do it a little bit shorter like this:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>

  <parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.0.4.RELEASE</version>
    <relativePath/>
  </parent>

  ...
  <build>
    <plugins>
      <plugin>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-maven-plugin</artifactId>
      </plugin>
    </plugins>
  </build>
</project>

The properties defined in the first example are already defined in the spring-boot-starter-parent pom file which means you do not need to define them another time cause you inherit them via the parent.

Automate It - Be Lazy - Part II

As I wrote in my previous post about automation I would continue my post. So here it is.

The following parts are left from my process:

The process

  1. Create an issue for myself (if already existing move to step 2)
  2. Create a branch within the appropriate project based on the issue
  3. Assign the issue to myself
  4. Migrate the issue into the state of IN PROGRESS
  5. Done.
  6. Done.
  7. Done.
  8. Done.
  9. Close the appropriate jira issue with a reference to the commit in comment.

If I work on updates of dependencies or parents in our builds, it is required to make a JIRA ticket for each of those updates (ok not really required but it is useful). It makes sense to test each of those updates separately in Jenkins. In the end it is an important information for the end-users, so they can see what has been changed.

Apache Maven Compiler Plugin Version 3.8.0 Released

The Apache Maven team is pleased to announce the release of the Apache Maven Compiler Plugin, version 3.8.0.

The Compiler Plugin is used to compile the sources of your project.

Important Notes since Version 3.8.0

  • The default value for source/target has been lifted from 1.5 to 1.6 see MCOMPILER-335.

You should specify the version in your project’s plugin configuration:

1
2
3
4
5
<plugin>
  <groupId>org.apache.maven.plugins</groupId>
  <artifactId>maven-compiler-plugin</artifactId>
  <version>3.8.0</version>
</plugin>

Automate It - Be Lazy - Part I

So based on my passion as open source developer in particular for the Apache Maven Project. I work JIRA based which helps us and myself to organize our work and of course follow the reported issues, feature request etc.

So usually I start my work based on a particular issue in JIRA and go via the following process:

The process

  1. Create an issue for myself (if already existing move to step 2)
  2. Create a branch within the appropriate project based on the issue
  3. Assign the issue to myself
  4. Migrate the issue into the state of IN PROGRESS
  5. Do some work on the branch and commit
  6. Push the branch to remote and let Jenkins check the branch repeat with Step 5 until I finished my work.
  7. Rebase against master if needed
  8. Merge the created branch into master and delete the remote and local branch.
  9. Close the appropriate jira issue with a reference to the commit in comment.

Apache Maven Parent POM Version 32 Released

The Apache Maven team is pleased to announce the release of the Maven Parent POMs Version 32

Maven Parent POMs include Maven Parent POM itself, but also Maven Plugins Parent POM, Maven Shared Components Parent POM, Maven Skins Parent POM and Maven Doxia Tools Parent POM.

https://maven.apache.org/pom/maven/

You should specify the version in your project as parent like the following:

1
2
3
4
5
<parent>
   <groupId>org.apache.maven</groupId>
   <artifactId>maven-parent</artifactId>
   <version>32</version>
</parent>

You can download the appropriate sources etc. from the download page:

https://maven.apache.org/pom/maven/download.html

Apache Software Foundation Parent POM Version 20 Released

The Apache Maven team is pleased to announce the release of the Apache Software Foundation Parent POM Version 20.

You should specify the version in your project as parent like the following:

1
2
3
4
5
<parent>
   <groupId>org.apache</groupId>
   <artifactId>apache</artifactId>
   <version>20</version>
</parent>

You can download the appropriate sources etc. from the download page:

http://maven.apache.org/pom/asf/download.html

Apache Maven Project Info Reports Plugin Version 3.0.0 Released

The Apache Maven team is pleased to announce the release of the Maven Project Info Reports Plugin version 3.0.0

You should specify the version in your project’s plugin configuration:

1
2
3
4
5
<plugin>
  <groupId>org.apache.maven.plugins</groupId>
  <artifactId>maven-project-info-reports-plugin</artifactId>
  <version>3.0.0</version>
</plugin>

You can download the appropriate sources etc. from the download page.

Apache Maven ACR Plugin Version 3.1.0 Released

The Apache Maven team is pleased to announce the release of the Apache Maven ACR Plugin, Version 3.1.0.

This plugin generates J2EE Application Client file.

Important Note: This is a Maven 3.X only plugin and needs JDK 7 to run.

1
2
3
4
5
<plugin>
  <groupId>org.apache.maven.plugins</groupId>
  <artifactId>maven-acr-plugin</artifactId>
  <version>3.1.0</version>
</plugin>

You can download the appropriate sources etc. from the download page.