diff --git a/dist-tools/dist-tool-plugin/src/main/java/org/apache/maven/dist/tools/DistPrerequisiteMojo.java b/dist-tools/dist-tool-plugin/src/main/java/org/apache/maven/dist/tools/DistPrerequisiteMojo.java
index 423bafa..f285b71 100644
--- a/dist-tools/dist-tool-plugin/src/main/java/org/apache/maven/dist/tools/DistPrerequisiteMojo.java
+++ b/dist-tools/dist-tool-plugin/src/main/java/org/apache/maven/dist/tools/DistPrerequisiteMojo.java
@@ -125,6 +125,8 @@
                 sink.tableRow();
                 sink.tableCell();
                 sink.text( mavenJDKInformation.getPluginName() );
+                sink.text( " " );
+                sink.text( mavenJDKInformation.getPluginVersion() );
                 sink.tableCell_();
                 sink.tableCell();
                 sink.text( mavenJDKInformation.getMavenVersion().toString() );
diff --git a/dist-tools/dist-tool-plugin/src/main/java/org/apache/maven/dist/tools/GetPrerequisites.java b/dist-tools/dist-tool-plugin/src/main/java/org/apache/maven/dist/tools/GetPrerequisites.java
index 81135b4..354841b 100644
--- a/dist-tools/dist-tool-plugin/src/main/java/org/apache/maven/dist/tools/GetPrerequisites.java
+++ b/dist-tools/dist-tool-plugin/src/main/java/org/apache/maven/dist/tools/GetPrerequisites.java
@@ -109,7 +109,19 @@
         mavenVersion = mavenVersion.replace( "Maven ", "" );
         jdkVersion = jdkVersion.replace( "JDK ", "" );
 
-        MavenJDKInformation mjdk = new MavenJDKInformation( pluginName, mavenVersion, jdkVersion );
+        String pluginVersion = doc.select( "pre" ).text();
+        int index = pluginVersion.indexOf( "<version>" );
+        if ( index < 0 )
+        {
+            pluginVersion = "";
+        }
+        else
+        {
+            pluginVersion = pluginVersion.substring( index + "<version>".length() );
+            pluginVersion = pluginVersion.substring( 0, pluginVersion.indexOf( "</version>" ) );
+        }
+
+        MavenJDKInformation mjdk = new MavenJDKInformation( pluginName, pluginVersion, mavenVersion, jdkVersion );
         return mjdk;
     }
 
diff --git a/dist-tools/dist-tool-plugin/src/main/java/org/apache/maven/dist/tools/MavenJDKInformation.java b/dist-tools/dist-tool-plugin/src/main/java/org/apache/maven/dist/tools/MavenJDKInformation.java
index eb6fe10..9a70452 100644
--- a/dist-tools/dist-tool-plugin/src/main/java/org/apache/maven/dist/tools/MavenJDKInformation.java
+++ b/dist-tools/dist-tool-plugin/src/main/java/org/apache/maven/dist/tools/MavenJDKInformation.java
@@ -30,13 +30,16 @@
 {
     private String pluginName;
 
+    private String pluginVersion;
+
     private ArtifactVersion mavenVersion;
 
     private String jdkVersion;
 
-    public MavenJDKInformation( String pluginName, String mavenVersion, String jdkVersion )
+    public MavenJDKInformation( String pluginName, String pluginVersion, String mavenVersion, String jdkVersion )
     {
         this.pluginName = pluginName;
+        this.pluginVersion = pluginVersion;
         this.mavenVersion = new DefaultArtifactVersion( mavenVersion );
         this.jdkVersion = jdkVersion;
     }
@@ -66,6 +69,11 @@
         return pluginName;
     }
 
+    public String getPluginVersion()
+    {
+        return pluginVersion;
+    }
+
     public void setPluginName( String pluginName )
     {
         this.pluginName = pluginName;
