summary refs log tree commit diff
diff options
context:
space:
mode:
authorTim Steinbach <tim@nequissimus.com>2016-10-31 09:38:28 -0400
committerTim Steinbach <tim@nequissimus.com>2016-11-14 15:19:33 -0500
commit38e762c6d1f145cf5a2eecec17f1db0c27ddc3a4 (patch)
tree7bf11ace6d340d167e657957e784c1a27ffb032c
parent1f2e19b67cdb68a89fc99a70eff5b851e488ab97 (diff)
downloadnixpkgs-38e762c6d1f145cf5a2eecec17f1db0c27ddc3a4.tar
nixpkgs-38e762c6d1f145cf5a2eecec17f1db0c27ddc3a4.tar.gz
nixpkgs-38e762c6d1f145cf5a2eecec17f1db0c27ddc3a4.tar.bz2
nixpkgs-38e762c6d1f145cf5a2eecec17f1db0c27ddc3a4.tar.lz
nixpkgs-38e762c6d1f145cf5a2eecec17f1db0c27ddc3a4.tar.xz
nixpkgs-38e762c6d1f145cf5a2eecec17f1db0c27ddc3a4.tar.zst
nixpkgs-38e762c6d1f145cf5a2eecec17f1db0c27ddc3a4.zip
Partial maven-hello
-rw-r--r--pkgs/development/java-modules/build-maven-package.nix4
-rw-r--r--pkgs/development/java-modules/findbugs/jsr305.nix15
-rw-r--r--pkgs/development/java-modules/junit/default.nix15
-rw-r--r--pkgs/development/java-modules/maven-hello/default.nix33
-rw-r--r--pkgs/development/java-modules/maven/archiver.nix14
-rw-r--r--pkgs/development/java-modules/maven/artifact-manager.nix22
-rw-r--r--pkgs/development/java-modules/maven/artifact.nix11
-rw-r--r--pkgs/development/java-modules/maven/common-artifact-filters.nix11
-rw-r--r--pkgs/development/java-modules/maven/core.nix22
-rw-r--r--pkgs/development/java-modules/maven/doxia-sink-api.nix11
-rw-r--r--pkgs/development/java-modules/maven/error-diagnostics.nix22
-rw-r--r--pkgs/development/java-modules/maven/filtering.nix14
-rw-r--r--pkgs/development/java-modules/maven/model.nix22
-rw-r--r--pkgs/development/java-modules/maven/monitor.nix22
-rw-r--r--pkgs/development/java-modules/maven/plugin-annotations.nix14
-rw-r--r--pkgs/development/java-modules/maven/plugin-api.nix11
-rw-r--r--pkgs/development/java-modules/maven/plugin-descriptor.nix22
-rw-r--r--pkgs/development/java-modules/maven/plugin-parameter-documenter.nix22
-rw-r--r--pkgs/development/java-modules/maven/plugin-registry.nix22
-rw-r--r--pkgs/development/java-modules/maven/profile.nix22
-rw-r--r--pkgs/development/java-modules/maven/project.nix11
-rw-r--r--pkgs/development/java-modules/maven/reporting-api.nix11
-rw-r--r--pkgs/development/java-modules/maven/repository-metadata.nix22
-rw-r--r--pkgs/development/java-modules/maven/settings.nix22
-rw-r--r--pkgs/development/java-modules/maven/shared-incremental.nix14
-rw-r--r--pkgs/development/java-modules/maven/shared-utils.nix14
-rw-r--r--pkgs/development/java-modules/maven/surefire-api.nix14
-rw-r--r--pkgs/development/java-modules/maven/surefire-booter.nix14
-rw-r--r--pkgs/development/java-modules/maven/surefire-common.nix14
-rw-r--r--pkgs/development/java-modules/maven/toolchain.nix25
-rw-r--r--pkgs/development/java-modules/mavenPlugins.nix141
-rw-r--r--pkgs/development/java-modules/plexus/build-api.nix14
-rw-r--r--pkgs/development/java-modules/plexus/compiler-api.nix14
-rw-r--r--pkgs/development/java-modules/plexus/interpolation.nix14
-rw-r--r--pkgs/development/java-modules/plexus/utils.nix22
-rw-r--r--pkgs/development/java-modules/poms.nix160
-rw-r--r--pkgs/top-level/java-packages.nix96
37 files changed, 956 insertions, 17 deletions
diff --git a/pkgs/development/java-modules/build-maven-package.nix b/pkgs/development/java-modules/build-maven-package.nix
index 182740c552d..499a48b2228 100644
--- a/pkgs/development/java-modules/build-maven-package.nix
+++ b/pkgs/development/java-modules/build-maven-package.nix
@@ -1,4 +1,4 @@
-{ stdenv, maven, lib }:
+{ stdenv, maven, lib, pkgs }:
 { mavenDeps, src, name, meta, m2Path, ... }:
 
 with builtins;
@@ -7,7 +7,7 @@ with lib;
 stdenv.mkDerivation rec {
   inherit mavenDeps src name meta m2Path;
 
-  flatDeps = flatten mavenDeps;
+  flatDeps = unique (flatten (mavenDeps ++ pkgs.javaPackages.mavenPlugins.mavenMinimal));
 
   propagatedBuildInput = [ maven ] ++ flatDeps;
 
diff --git a/pkgs/development/java-modules/findbugs/jsr305.nix b/pkgs/development/java-modules/findbugs/jsr305.nix
new file mode 100644
index 00000000000..466ce247633
--- /dev/null
+++ b/pkgs/development/java-modules/findbugs/jsr305.nix
@@ -0,0 +1,15 @@
+{ fetchMaven }:
+
+rec {
+  findbugsJsr305_2_0_1 = map (obj: fetchMaven {
+    version = "2.0.1";
+    baseName = "jsr305";
+    package = "/com/google/code/findbugs";
+    sha512 = obj.sha512;
+    type = obj.type;
+  }) [
+    { type = "jar"; sha512 = "33flq50603n496c90981a0gsv30pgk6cnf859vdj6c8n4iq973prq847z5q8ld64j3rdmakxy9rsp49w7pddfd0v0i9n97rkr435f5k"; }
+    { type = "pom"; sha512 = "2iavm6d9nmy4g2i6y7q4l68bpjpncng1qfhbxdj44l3nqi7ixcjw0y38ymial7g2z0r1kd9qydr5lawjspr0fbzpjkcln2q7gsf0hfw"; }
+  ];
+}
+
diff --git a/pkgs/development/java-modules/junit/default.nix b/pkgs/development/java-modules/junit/default.nix
index 7325b07700f..ebb614bb703 100644
--- a/pkgs/development/java-modules/junit/default.nix
+++ b/pkgs/development/java-modules/junit/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, pkgs, mavenbuild }:
+{ stdenv, pkgs, mavenbuild, fetchMaven }:
 
 with pkgs.javaPackages;
 
@@ -25,8 +25,19 @@ rec {
     };
   };
 
+  junit_3_8_1 = map (obj: fetchMaven {
+    version = "3.8.1";
+    baseName = "junit";
+    package = "/junit";
+    sha512 = obj.sha512;
+    type = obj.type;
+  }) [
+    { type = "pom"; sha512 = "2b368057s8i61il387fqvznn70r9ndm815r681fn9i5afs1qgkw7i1d6vsn3pv2bbif1kmhb7qzcc574m3xcwc8a2mqw44b4bbxsfyl"; }
+    { type = "jar"; sha512 = "25yk0lzwk46r867nhrw4hg7cvz28wb8ln9nw1dqrb6zarifl54p4h1mcz90vmih405bsk96g0qb6hn1h4df0fas3f5kma9vxfjryvwf"; }
+  ];
+
   junit_4_12 = junitGen {
-    mavenDeps = [ mavenPlugins.animalSniffer_1_11 hamcrestCore_1_3 plexusUtils_1_1 ] ++ mavenPlugins.mavenDefault;
+    mavenDeps = [ mavenPlugins.animalSniffer_1_11 hamcrestCore_1_3 plexusUtils_1_1 ];
     sha512 = "0bbldnf37jl855s1pdx2a518ivfifv75189vsbpylnj8530vnf8z6b2dglkcbcjgr22lp1s4m1nnplz5dmka9sr7vj055p88k27kqw9";
     version = "4.12";
   };
diff --git a/pkgs/development/java-modules/maven-hello/default.nix b/pkgs/development/java-modules/maven-hello/default.nix
new file mode 100644
index 00000000000..feb3146ffd6
--- /dev/null
+++ b/pkgs/development/java-modules/maven-hello/default.nix
@@ -0,0 +1,33 @@
+{ stdenv, pkgs, mavenbuild }:
+
+with pkgs.javaPackages;
+
+rec {
+  mavenHelloRec = { mavenDeps, sha512, version }: mavenbuild rec {
+    inherit mavenDeps sha512 version;
+
+    name = "maven-hello-${version}";
+    src = pkgs.fetchFromGitHub {
+      inherit sha512;
+      owner = "NeQuissimus";
+      repo = "maven-hello";
+      rev = "v${version}";
+    };
+    m2Path = "/com/nequissimus/maven-hello/${version}";
+
+    meta = {
+      homepage = http://github.com/NeQuissimus/maven-hello/;
+      description = "Maven Hello World";
+      license = stdenv.lib.licenses.unlicense;
+      platforms = stdenv.lib.platforms.all;
+      maintainers = with stdenv.lib.maintainers;
+        [ nequissimus ];
+    };
+  };
+
+  mavenHello_1_0 = mavenHelloRec {
+    mavenDeps = [];
+    sha512 = "3kv5z1i02wfb0l5x3phbsk3qb3wky05sqn4v3y4cx56slqfp9z8j76vnh8v45ydgskwl2vs9xjx6ai8991mzb5ikvl3vdgmrj1j17p2";
+    version = "1.0";
+  };
+}
diff --git a/pkgs/development/java-modules/maven/archiver.nix b/pkgs/development/java-modules/maven/archiver.nix
new file mode 100644
index 00000000000..790e7894bff
--- /dev/null
+++ b/pkgs/development/java-modules/maven/archiver.nix
@@ -0,0 +1,14 @@
+{ fetchMaven }:
+
+rec {
+  mavenArchiver_2_5 = map (obj: fetchMaven {
+    version = "2.5";
+    baseName = "maven-archiver";
+    package = "/org/apache/maven";
+    sha512 = obj.sha512;
+    type = obj.type;
+  }) [
+    { type = "jar"; sha512 = "3kkv5kf3k5in69aplawkr0cr2cviyjgf8k6r6qvgxk53i3jmh7qylzrwkrd9bxclkjkgyg77cffxm48qhxm9pyqncdbwjldsmmdfb4f"; }
+    { type = "pom"; sha512 = "37kvfxcpfajjn9lmvh5kay4y61ri1190hxxgiil8fqfvmvcm02jcqzfi4ry0nzc80g5fsarsd3s2ns2d8l0lnqjp28nn51dixm9a55w"; }
+  ];
+}
diff --git a/pkgs/development/java-modules/maven/artifact-manager.nix b/pkgs/development/java-modules/maven/artifact-manager.nix
index b46fb254b17..7f0a9226e87 100644
--- a/pkgs/development/java-modules/maven/artifact-manager.nix
+++ b/pkgs/development/java-modules/maven/artifact-manager.nix
@@ -1,6 +1,17 @@
 { fetchMaven }:
 
 rec {
+  mavenArtifactManager_2_0_6 = map (obj: fetchMaven {
+    version = "2.0.6";
+    baseName = "maven-artifact-manager";
+    package = "/org/apache/maven";
+    sha512 = obj.sha512;
+    type = obj.type;
+  }) [
+    { type = "jar"; sha512 = "1alp2iahaaf39yd3xp8817sz93nhz53flkkv5dx87vybsizpykb1g7jn6bnx0cbqqr9k5pi27z8mbkmry05vwqc6jyic1pyvzy1y3vn"; }
+    { type = "pom"; sha512 = "3pvj8gpcg57akalj4574k4mzw2skgm0w69bdvh0ivyd8skgdrf5gwxf57hl5rbgsdpr82m2za7yvi63fw82k7v84sib904fs639r3pf"; }
+  ];
+
   mavenArtifactManager_2_0_9 = map (obj: fetchMaven {
     version = "2.0.9";
     baseName = "maven-artifact-manager";
@@ -11,4 +22,15 @@ rec {
     { type = "jar"; sha512 = "1vvxf2dannx9p2qvlbmrxfni5mc0f3722p3bcdz6bk3z4dhb2hlw2wx17nvirq5r3k43azgp13mg0638saz7v1g23f07n9yzm979f0p"; }
     { type = "pom"; sha512 = "2v7371gsarjb4s2bp5vclqgdg82mh7nzy7af31g9z20q2r6ndw024xa8bpcxp227yv83lpawbhq0ysg0glnw9ql54100h9hbllam0p8"; }
   ];
+
+  mavenArtifactManager_2_2_1 = map (obj: fetchMaven {
+    version = "2.2.1";
+    baseName = "maven-artifact-manager";
+    package = "/org/apache/maven";
+    sha512 = obj.sha512;
+    type = obj.type;
+  }) [
+    { type = "jar"; sha512 = "1vvxf2dannx9p2qvlbmrxfni5mc0f3722p3bcdz6bk3z4dhb2hlw2wx17nvirq5r3k43azgp13mg0638saz7v1g23f07n9yzm979f0p"; }
+    { type = "pom"; sha512 = "2v7371gsarjb4s2bp5vclqgdg82mh7nzy7af31g9z20q2r6ndw024xa8bpcxp227yv83lpawbhq0ysg0glnw9ql54100h9hbllam0p8"; }
+  ];
 }
diff --git a/pkgs/development/java-modules/maven/artifact.nix b/pkgs/development/java-modules/maven/artifact.nix
index d0b528b916a..12876f53d5a 100644
--- a/pkgs/development/java-modules/maven/artifact.nix
+++ b/pkgs/development/java-modules/maven/artifact.nix
@@ -1,6 +1,17 @@
 { fetchMaven }:
 
 rec {
+  mavenArtifact_2_0_6 = map (obj: fetchMaven {
+    version = "2.0.6";
+    baseName = "maven-artifact";
+    package = "/org/apache/maven";
+    sha512 = obj.sha512;
+    type = obj.type;
+  }) [
+    { type = "jar"; sha512 = "3kkv5kf3k5in69aplawkr0cr2cviyjgf8k6r6qvgxk53i3jmh7qylzrwkrd9bxclkjkgyg77cffxm48qhxm9pyqncdbwjldsmmdfb4f"; }
+    { type = "pom"; sha512 = "37kvfxcpfajjn9lmvh5kay4y61ri1190hxxgiil8fqfvmvcm02jcqzfi4ry0nzc80g5fsarsd3s2ns2d8l0lnqjp28nn51dixm9a55w"; }
+  ];
+
   mavenArtifact_2_0_9 = map (obj: fetchMaven {
     version = "2.0.9";
     baseName = "maven-artifact";
diff --git a/pkgs/development/java-modules/maven/common-artifact-filters.nix b/pkgs/development/java-modules/maven/common-artifact-filters.nix
index 4d46de674b5..e0ee7e6a59e 100644
--- a/pkgs/development/java-modules/maven/common-artifact-filters.nix
+++ b/pkgs/development/java-modules/maven/common-artifact-filters.nix
@@ -1,6 +1,17 @@
 { fetchMaven }:
 
 rec {
+  mavenCommonArtifactFilters_1_3 = map (obj: fetchMaven {
+    version = "1.3";
+    baseName = "maven-common-artifact-filters";
+    package = "/org/apache/maven/shared";
+    sha512 = obj.sha512;
+    type = obj.type;
+  }) [
+    { type = "pom"; sha512 = "21wyk4llwjyanlggy281f9n0sjshjqvd322lbhxmzn42cd9vmj0s6xih82jwqlkcxkypwymyj1gl7van55ibd98p1jjjvr93gs1cn14"; }
+    { type = "jar"; sha512 = "1bv4lp1a8sb79almnygiq0pmm0fdhy9pyakp6xhz91b4v1cqg03sb586yc4lg2934yv4jjbybqjbh4l0y3kgnanjbxdxdgxgyf14iif"; }
+  ];
+
   mavenCommonArtifactFilters_1_4 = map (obj: fetchMaven {
     version = "1.4";
     baseName = "maven-common-artifact-filters";
diff --git a/pkgs/development/java-modules/maven/core.nix b/pkgs/development/java-modules/maven/core.nix
index 6aed7095ad2..7f186503d31 100644
--- a/pkgs/development/java-modules/maven/core.nix
+++ b/pkgs/development/java-modules/maven/core.nix
@@ -1,6 +1,17 @@
 { fetchMaven }:
 
 rec {
+  mavenCore_2_0_6 = map (obj: fetchMaven {
+    version = "2.0.6";
+    baseName = "maven-core";
+    package = "/org/apache/maven";
+    sha512 = obj.sha512;
+    type = obj.type;
+  }) [
+    { type = "pom"; sha512 = "2q4s5y8bpa73a10r4m9qgzfsczcap147p5gcc9inm5fx9x32sbr7zqw6xj7igsyjb9qsqpp3v727xv3ng57gczdqs1dazljqrgk9jal"; }
+    { type = "jar"; sha512 = "2ar2qvhig92gifm4zhd7mzcm0c7cnlyvd3d089a7chlvxhrxyhf08xxpd8sxa525sa413v2d762yx2mbhnkf564i1zw4gg7cdjl5z47"; }
+  ];
+
   mavenCore_2_0_9 = map (obj: fetchMaven {
     version = "2.0.9";
     baseName = "maven-core";
@@ -11,4 +22,15 @@ rec {
     { type = "pom"; sha512 = "1a17qcd05v08jpd9ah650kbmrdxrxjfl2jgx9fnc89x4ahzmml9fr2qal0pwnn0sw3g3j1cqbry9lwq5hzja6x779s90hqrb72s49l1"; }
     { type = "jar"; sha512 = "0qp0kns07h4j7d67z0j09kjn0hwf6k6iz4vp2pmisx131f98acm516y8ca35ly7pp6zn9mdk3c4nh9c0rd7xnqvi12ijqrfvg01dri2"; }
   ];
+
+  mavenCore_2_2_1 = map (obj: fetchMaven {
+    version = "2.2.1";
+    baseName = "maven-core";
+    package = "/org/apache/maven";
+    sha512 = obj.sha512;
+    type = obj.type;
+  }) [
+    { type = "pom"; sha512 = "1a17qcd05v08jpd9ah650kbmrdxrxjfl2jgx9fnc89x4ahzmml9fr2qal0pwnn0sw3g3j1cqbry9lwq5hzja6x779s90hqrb72s49l1"; }
+    { type = "jar"; sha512 = "0qp0kns07h4j7d67z0j09kjn0hwf6k6iz4vp2pmisx131f98acm516y8ca35ly7pp6zn9mdk3c4nh9c0rd7xnqvi12ijqrfvg01dri2"; }
+  ];
 }
diff --git a/pkgs/development/java-modules/maven/doxia-sink-api.nix b/pkgs/development/java-modules/maven/doxia-sink-api.nix
index 6acf39b480d..7454f7bbc96 100644
--- a/pkgs/development/java-modules/maven/doxia-sink-api.nix
+++ b/pkgs/development/java-modules/maven/doxia-sink-api.nix
@@ -1,6 +1,17 @@
 { fetchMaven }:
 
 rec {
+  mavenDoxiaSinkApi_1_0_alpha7 = map (obj: fetchMaven {
+    version = "1.0-alpha-7";
+    baseName = "doxia-sink-api";
+    package = "/org/apache/maven/doxia";
+    sha512 = obj.sha512;
+    type = obj.type;
+  }) [
+    { type = "pom"; sha512 = "3lb710zyldqysy19cgsan6mb5yrxx07vphddasq4kv1z9p5l4mpx9jq8fdhcxm4bgrfpdxkrdy2z4h2w8kc3gp2dk5g515x854jhqar"; }
+    { type = "jar"; sha512 = "0q2vn7yyl8qvsifb629jh3hmaa5pkj5y22zy7qbji1xmn28qp0n1skfvlmpn0m8djwzmayw6xjbxhxvspzc9a14n3nkmjzmr5yz053a"; }
+  ];
+
   mavenDoxiaSinkApi_1_0_alpha10 = map (obj: fetchMaven {
     version = "1.0-alpha-10";
     baseName = "doxia-sink-api";
diff --git a/pkgs/development/java-modules/maven/error-diagnostics.nix b/pkgs/development/java-modules/maven/error-diagnostics.nix
index 22ac264bdd1..c8993f1f0c9 100644
--- a/pkgs/development/java-modules/maven/error-diagnostics.nix
+++ b/pkgs/development/java-modules/maven/error-diagnostics.nix
@@ -1,6 +1,17 @@
 { fetchMaven }:
 
 rec {
+  mavenErrorDiagnostics_2_0_6 = map (obj: fetchMaven {
+    version = "2.0.6";
+    baseName = "maven-error-diagnostics";
+    package = "/org/apache/maven";
+    sha512 = obj.sha512;
+    type = obj.type;
+  }) [
+    { type = "jar"; sha512 = "2rpzlgi1hyiq1qmfn9fdr3317mq990y67zb0jvyah7sgr5x969l984cfigwdcw0m7i4kpg5157myq4cps3d9pz81h4wx4plwwpkyp2v"; }
+    { type = "pom"; sha512 = "3r8r5sw3zbyms1yk1811cxh2a6p86lhg8aa9b6whn97mx3gmy9zy2nhsadgnxw1hbc2y6l1pk3xs2q73hmvag1bapks5bm7higmgdpg"; }
+  ];
+
   mavenErrorDiagnostics_2_0_9 = map (obj: fetchMaven {
     version = "2.0.9";
     baseName = "maven-error-diagnostics";
@@ -11,4 +22,15 @@ rec {
     { type = "jar"; sha512 = "3czdrv2s1gafclm57m5qxw3aaxrm3r3z9yggscxg60fk0hn6jlpygclghkrl2g7c8ggdqdd01y6zcj1wgzq32yp1cd4s3kakf2y25dm"; }
     { type = "pom"; sha512 = "3l0cpg0ssivfnadffc68cnac65vpfpl0qa9a4ik82jxcwhfa00337jxz37vyqaqs1vjrvd2cqhmjayddwkpwc8aqnz3nr0rlqnqzm7g"; }
   ];
+
+  mavenErrorDiagnostics_2_2_1 = map (obj: fetchMaven {
+    version = "2.2.1";
+    baseName = "maven-error-diagnostics";
+    package = "/org/apache/maven";
+    sha512 = obj.sha512;
+    type = obj.type;
+  }) [
+    { type = "jar"; sha512 = "3czdrv2s1gafclm57m5qxw3aaxrm3r3z9yggscxg60fk0hn6jlpygclghkrl2g7c8ggdqdd01y6zcj1wgzq32yp1cd4s3kakf2y25dm"; }
+    { type = "pom"; sha512 = "3l0cpg0ssivfnadffc68cnac65vpfpl0qa9a4ik82jxcwhfa00337jxz37vyqaqs1vjrvd2cqhmjayddwkpwc8aqnz3nr0rlqnqzm7g"; }
+  ];
 }
diff --git a/pkgs/development/java-modules/maven/filtering.nix b/pkgs/development/java-modules/maven/filtering.nix
new file mode 100644
index 00000000000..5851a3db195
--- /dev/null
+++ b/pkgs/development/java-modules/maven/filtering.nix
@@ -0,0 +1,14 @@
+{ fetchMaven }:
+
+rec {
+  mavenFiltering_1_1 = map (obj: fetchMaven {
+    version = "1.1";
+    baseName = "maven-filtering";
+    package = "/org/apache/maven/shared";
+    sha512 = obj.sha512;
+    type = obj.type;
+  }) [
+    { type = "pom"; sha512 = "022n451vgprms5rp26iynlg7yn7p1l71d5sd5r177dmw0250pvrr5gvjrriq8fis2rxbdhr42zl1xm2mmzlg6sj55izzy03dwryhydn"; }
+    { type = "jar"; sha512 = "33ing5r916n71skj75cikhrapns28l6ryxw9q3yn5hyqzsbj2yk7lzss87ardg9j3wkmb4rpj9mkb63w0fljwjfpbja6qmzxrybj5rp"; }
+  ];
+}
diff --git a/pkgs/development/java-modules/maven/model.nix b/pkgs/development/java-modules/maven/model.nix
index fa3abf7c4d2..34832c371d5 100644
--- a/pkgs/development/java-modules/maven/model.nix
+++ b/pkgs/development/java-modules/maven/model.nix
@@ -1,6 +1,17 @@
 { fetchMaven }:
 
 rec {
+  mavenModel_2_0_6 = map (obj: fetchMaven {
+    version = "2.0.6";
+    baseName = "maven-model";
+    package = "/org/apache/maven";
+    sha512 = obj.sha512;
+    type = obj.type;
+  }) [
+    { type = "jar"; sha512 = "0v4fzp4p71zjdxbf0lwjifydrxh9ag2c6pqc4n07hnr2rvcsx8n1rhb46ifaq6ycxps64fjnwkn29i5wlfqy9yfdh8gjs6i2sy523nv"; }
+    { type = "pom"; sha512 = "1r5bk36120534ngqkh8rbxi0q0allkaqy6yxvs6s5vwjq0gvm12snp6y6vxvh5p4bljpfms7r4ljglgnnfdrl8l8vmrj0af201gnv3m"; }
+  ];
+
   mavenModel_2_0_9 = map (obj: fetchMaven {
     version = "2.0.9";
     baseName = "maven-model";
@@ -12,6 +23,17 @@ rec {
     { type = "pom"; sha512 = "2vvyawhfq0gwa54ir5l2drcfxphkd47ghwgz89v3vsqgjry714vp01pa5a6yjlwfd45mknyrb71ws6dki4zjgzhdm09ck7cxg5qkpr9"; }
   ];
 
+  mavenModel_2_2_1 = map (obj: fetchMaven {
+    version = "2.2.1";
+    baseName = "maven-model";
+    package = "/org/apache/maven";
+    sha512 = obj.sha512;
+    type = obj.type;
+  }) [
+    { type = "jar"; sha512 = "14pxgdcim20x9lisf510nazzlcjxv9fpqabkdn0d86qa7d9270m4fmya5crasx2np9h0gxl407d77vcjf99fdxizg7i32w35yljqp3z"; }
+    { type = "pom"; sha512 = "2vvyawhfq0gwa54ir5l2drcfxphkd47ghwgz89v3vsqgjry714vp01pa5a6yjlwfd45mknyrb71ws6dki4zjgzhdm09ck7cxg5qkpr9"; }
+  ];
+
   mavenModel_3_0_3 = map (obj: fetchMaven {
     version = "3.0.3";
     baseName = "maven-model";
diff --git a/pkgs/development/java-modules/maven/monitor.nix b/pkgs/development/java-modules/maven/monitor.nix
index 1304304257a..f127efba210 100644
--- a/pkgs/development/java-modules/maven/monitor.nix
+++ b/pkgs/development/java-modules/maven/monitor.nix
@@ -1,6 +1,17 @@
 { fetchMaven }:
 
 rec {
+  mavenMonitor_2_0_6 = map (obj: fetchMaven {
+    version = "2.0.6";
+    baseName = "maven-monitor";
+    package = "/org/apache/maven";
+    sha512 = obj.sha512;
+    type = obj.type;
+  }) [
+    { type = "jar"; sha512 = "3ssw8r9qdhbvi21y8lqz39aml2l9pzw4g26hvlh3rbshvhhgsm672jl1pv8z5pbs73w7px6dnz1yhcf7l5df53apfzq0fggrw9fsnhz"; }
+    { type = "pom"; sha512 = "2wdvc5r3bsrml3w6nbym9flyj3ryj308bbfmns156p9pincc73pppad5cgyv4wrwjnmwp6qfbjsz90k6481v4li88a78nmc8lhmhylr"; }
+  ];
+
   mavenMonitor_2_0_9 = map (obj: fetchMaven {
     version = "2.0.9";
     baseName = "maven-monitor";
@@ -11,4 +22,15 @@ rec {
     { type = "jar"; sha512 = "2cxspfhf3sbz68y1kjqhw2lny6s1f1kf8sfad6f1qp653g4213c9yy7y3qk9szp528866vw7daa9gbymxd66k3bm09g1q4kgnkg5wn3"; }
     { type = "pom"; sha512 = "0h9brjzkvxfmk549wmq4mw71yhhf1qb1diin9rnsc5nlvh189k60088b5pcc14324gffkrvdghivfy8spjci5izmay87qk7hfsg2lxc"; }
   ];
+
+  mavenMonitor_2_2_1 = map (obj: fetchMaven {
+    version = "2.2.1";
+    baseName = "maven-monitor";
+    package = "/org/apache/maven";
+    sha512 = obj.sha512;
+    type = obj.type;
+  }) [
+    { type = "jar"; sha512 = "2cxspfhf3sbz68y1kjqhw2lny6s1f1kf8sfad6f1qp653g4213c9yy7y3qk9szp528866vw7daa9gbymxd66k3bm09g1q4kgnkg5wn3"; }
+    { type = "pom"; sha512 = "0h9brjzkvxfmk549wmq4mw71yhhf1qb1diin9rnsc5nlvh189k60088b5pcc14324gffkrvdghivfy8spjci5izmay87qk7hfsg2lxc"; }
+  ];
 }
diff --git a/pkgs/development/java-modules/maven/plugin-annotations.nix b/pkgs/development/java-modules/maven/plugin-annotations.nix
new file mode 100644
index 00000000000..da7d52242a3
--- /dev/null
+++ b/pkgs/development/java-modules/maven/plugin-annotations.nix
@@ -0,0 +1,14 @@
+{ fetchMaven }:
+
+rec {
+  mavenPluginAnnotations = map (obj: fetchMaven {
+    version = "3.1";
+    baseName = "maven-plugin-annotations";
+    package = "/org/apache/maven/plugin-tools";
+    sha512 = obj.sha512;
+    type = obj.type;
+  }) [
+    { type = "pom"; sha512 = "17zyw3j4zbg1hhj18i4q1f0r8gdxl3q9x5ksyqlyr0mrw2sadc6lvbbhyp3l7vsbddl4bgdx36gwvjp5d97gbmk1nbpi1vabadfhq76"; }
+    { type = "jar"; sha512 = "0rk2nzkwcrkfy3vs0zl0l2lxp3w4hkwxrypisbivv5al7sc8lbzls6jgpp3h5gx9kk4scjj24qf5vyimnbadj63rvqffg581fs2zgl9"; }
+  ];
+}
diff --git a/pkgs/development/java-modules/maven/plugin-api.nix b/pkgs/development/java-modules/maven/plugin-api.nix
index 56069bf1970..ed791a86955 100644
--- a/pkgs/development/java-modules/maven/plugin-api.nix
+++ b/pkgs/development/java-modules/maven/plugin-api.nix
@@ -23,6 +23,17 @@ rec {
     { type = "jar"; sha512 = "0hvl32k09wr34b6v0wl27y6353mx3afsgwyfw0vpx5aa5b8wiw86vlbknh3kjl43zp2ffxq6b4c7n07jq3y2wczz08gscs5apszhj9q"; }
   ];
 
+  mavenPluginApi_2_2_1 = map (obj: fetchMaven {
+    version = "2.2.1";
+    baseName = "maven-plugin-api";
+    package = "/org/apache/maven";
+    sha512 = obj.sha512;
+    type = obj.type;
+  }) [
+    { type = "pom"; sha512 = "23qj23k049jz4mp77h2wj4mnjqszb99l4xvxas93cpnbdl51a5s0d0rsg60a8zg0ic04n6fr8nig0vvmmcsggx93a96w4p3na97q30n"; }
+    { type = "jar"; sha512 = "0hvl32k09wr34b6v0wl27y6353mx3afsgwyfw0vpx5aa5b8wiw86vlbknh3kjl43zp2ffxq6b4c7n07jq3y2wczz08gscs5apszhj9q"; }
+  ];
+
   mavenPluginApi_3_0_3 = map (obj: fetchMaven {
     version = "3.0.3";
     baseName = "maven-plugin-api";
diff --git a/pkgs/development/java-modules/maven/plugin-descriptor.nix b/pkgs/development/java-modules/maven/plugin-descriptor.nix
index 35b829a8578..397a7610cfe 100644
--- a/pkgs/development/java-modules/maven/plugin-descriptor.nix
+++ b/pkgs/development/java-modules/maven/plugin-descriptor.nix
@@ -1,6 +1,17 @@
 { fetchMaven }:
 
 rec {
+  mavenPluginDescriptor_2_0_6 = map (obj: fetchMaven {
+    version = "2.0.6";
+    baseName = "maven-plugin-descriptor";
+    package = "/org/apache/maven";
+    sha512 = obj.sha512;
+    type = obj.type;
+  }) [
+    { type = "jar"; sha512 = "0f23srb1clkmvq05rcmv8gn7lifaw5f1i2vqyn2cfnhgcmp9i32xsbhqpx9y0rqlv6497x80dck7xylp22d3hnqkpm3pxgws9wsz7sm"; }
+    { type = "pom"; sha512 = "10hra81gs8swq00k4rw3ip8wr9gl4d7vd3621ga4298b466wic7sbb9fy9ifw22q49ia7hkigqi4ha73q7kmrl7ihnb9iv4vil02yj6"; }
+  ];
+
   mavenPluginDescriptor_2_0_9 = map (obj: fetchMaven {
     version = "2.0.9";
     baseName = "maven-plugin-descriptor";
@@ -11,4 +22,15 @@ rec {
     { type = "jar"; sha512 = "0q9jw44v1mi489bqmdvj7jpv753vdp9jzp50ky6pd912x190spkw6ccmpc87azmwsf131d4h0k0fqi6iidl9ip22a8rwaa22yq7gxi8"; }
     { type = "pom"; sha512 = "0c4hrb6qhi8wxw7acyphv6l33973vhvg7vjknc3bx8bg36404ky9k78q79r3p2an2886hdfayb0l7wji86bq4q8464754gbx02ci7r8"; }
   ];
+
+  mavenPluginDescriptor_2_2_1 = map (obj: fetchMaven {
+    version = "2.2.1";
+    baseName = "maven-plugin-descriptor";
+    package = "/org/apache/maven";
+    sha512 = obj.sha512;
+    type = obj.type;
+  }) [
+    { type = "jar"; sha512 = "0q9jw44v1mi489bqmdvj7jpv753vdp9jzp50ky6pd912x190spkw6ccmpc87azmwsf131d4h0k0fqi6iidl9ip22a8rwaa22yq7gxi8"; }
+    { type = "pom"; sha512 = "0c4hrb6qhi8wxw7acyphv6l33973vhvg7vjknc3bx8bg36404ky9k78q79r3p2an2886hdfayb0l7wji86bq4q8464754gbx02ci7r8"; }
+  ];
 }
diff --git a/pkgs/development/java-modules/maven/plugin-parameter-documenter.nix b/pkgs/development/java-modules/maven/plugin-parameter-documenter.nix
index 17ed70bfa9f..3fd437441a3 100644
--- a/pkgs/development/java-modules/maven/plugin-parameter-documenter.nix
+++ b/pkgs/development/java-modules/maven/plugin-parameter-documenter.nix
@@ -1,6 +1,17 @@
 { fetchMaven }:
 
 rec {
+  mavenPluginParameterDocumenter_2_0_6 = map (obj: fetchMaven {
+    version = "2.0.6";
+    baseName = "maven-plugin-parameter-documenter";
+    package = "/org/apache/maven";
+    sha512 = obj.sha512;
+    type = obj.type;
+  }) [
+    { type = "jar"; sha512 = "11yxhw6pn6np1a828ww6iq4gcg6i6l6wlr6pwx3kd0fh4cavd93rfh2khvydfsz0cw40m1kbqglnwdqbdc9d5akhwpnvhkfwsqvl8li"; }
+    { type = "pom"; sha512 = "0g62n2g7jcknzgnpl46fsdn9yndjv09fwijahlnmc1gh9w2v0rxyq42p133vgv13jc5wzfqyrf7mh3fq7p0w9mfbharaz92flh2caik"; }
+  ];
+
   mavenPluginParameterDocumenter_2_0_9 = map (obj: fetchMaven {
     version = "2.0.9";
     baseName = "maven-plugin-parameter-documenter";
@@ -11,4 +22,15 @@ rec {
     { type = "jar"; sha512 = "0djr58wp7a93p96sn0k24d6liabd7a4qvsd0p7lk88ws3jwfw5bqh6d0a3fyc86fkask1wi7krrvsm7i6yiw1f1r0d6xjzj8fx5m4kz"; }
     { type = "pom"; sha512 = "39mhwcxwcqgy6pk3qlabs1b8k8fqvkps6r1zb1n7phfwh4dklngyqdrxh90j3wjg3692l7as1k0439z2x124wlh6bzpv83jmx64jiyh"; }
   ];
+
+  mavenPluginParameterDocumenter_2_2_1 = map (obj: fetchMaven {
+    version = "2.2.1";
+    baseName = "maven-plugin-parameter-documenter";
+    package = "/org/apache/maven";
+    sha512 = obj.sha512;
+    type = obj.type;
+  }) [
+    { type = "jar"; sha512 = "0djr58wp7a93p96sn0k24d6liabd7a4qvsd0p7lk88ws3jwfw5bqh6d0a3fyc86fkask1wi7krrvsm7i6yiw1f1r0d6xjzj8fx5m4kz"; }
+    { type = "pom"; sha512 = "39mhwcxwcqgy6pk3qlabs1b8k8fqvkps6r1zb1n7phfwh4dklngyqdrxh90j3wjg3692l7as1k0439z2x124wlh6bzpv83jmx64jiyh"; }
+  ];
 }
diff --git a/pkgs/development/java-modules/maven/plugin-registry.nix b/pkgs/development/java-modules/maven/plugin-registry.nix
index baccc1aeb76..7191a377a33 100644
--- a/pkgs/development/java-modules/maven/plugin-registry.nix
+++ b/pkgs/development/java-modules/maven/plugin-registry.nix
@@ -1,6 +1,17 @@
 { fetchMaven }:
 
 rec {
+  mavenPluginRegistry_2_0_6 = map (obj: fetchMaven {
+    version = "2.0.6";
+    baseName = "maven-plugin-registry";
+    package = "/org/apache/maven";
+    sha512 = obj.sha512;
+    type = obj.type;
+  }) [
+    { type = "jar"; sha512 = "1d9134rarw653dgn1q80dahjpkl82sfrznkhdb6s8zy6d31bbr4ry6w362r7a2p54ijx2vw3rl0jmh805p3imlf1cgra1m7pihh2b63"; }
+    { type = "pom"; sha512 = "0b85gmdgwwxdw4czs7383ivssp5n8nxr5vxnj8agjlx6yclxpbbw7n192c4p1hba8as1md52c08cxilibjiiahlv83bmzyh2hb0vdm3"; }
+  ];
+
   mavenPluginRegistry_2_0_9 = map (obj: fetchMaven {
     version = "2.0.9";
     baseName = "maven-plugin-registry";
@@ -11,4 +22,15 @@ rec {
     { type = "jar"; sha512 = "14mkwxvj0rbj28df9gjnkvr20paayqdmsg0vrzcb23d3xng3zc1fy5hvkifnp7xg73qxpdz0nij56lnnj7q2dqxcnmqvh0vslhc2xja"; }
     { type = "pom"; sha512 = "0c09imgd44b3pgnj1bjak7xn2z3mpwy9nhbchagfqkicras4djmn2dqwpm1z6p1d4khwx830x9grjrw45przan8lgc7wxzkalnnaqkf"; }
   ];
+
+  mavenPluginRegistry_2_2_1 = map (obj: fetchMaven {
+    version = "2.2.1";
+    baseName = "maven-plugin-registry";
+    package = "/org/apache/maven";
+    sha512 = obj.sha512;
+    type = obj.type;
+  }) [
+    { type = "jar"; sha512 = "14mkwxvj0rbj28df9gjnkvr20paayqdmsg0vrzcb23d3xng3zc1fy5hvkifnp7xg73qxpdz0nij56lnnj7q2dqxcnmqvh0vslhc2xja"; }
+    { type = "pom"; sha512 = "0c09imgd44b3pgnj1bjak7xn2z3mpwy9nhbchagfqkicras4djmn2dqwpm1z6p1d4khwx830x9grjrw45przan8lgc7wxzkalnnaqkf"; }
+  ];
 }
diff --git a/pkgs/development/java-modules/maven/profile.nix b/pkgs/development/java-modules/maven/profile.nix
index 674f35a2ef9..bcaae06b1f9 100644
--- a/pkgs/development/java-modules/maven/profile.nix
+++ b/pkgs/development/java-modules/maven/profile.nix
@@ -1,6 +1,17 @@
 { fetchMaven }:
 
 rec {
+  mavenProfile_2_0_6 = map (obj: fetchMaven {
+    version = "2.0.6";
+    baseName = "maven-profile";
+    package = "/org/apache/maven";
+    sha512 = obj.sha512;
+    type = obj.type;
+  }) [
+    { type = "jar"; sha512 = "3wng0csnn4v3y2gndazg46hqriz27kkb977xzw5wr8anyharlz2ancl38zyfjf5vm18irqn8cxqklhzd3x1h0h6rlvz5z1wrrivr5kl"; }
+    { type = "pom"; sha512 = "063vbh2miyfvrp90hs5cff5r8cj573zysjvd79lnz7zsah3ddbg6sbv09nb0pjy76pbqgrh913dziqk12l13kwngcgpq8v38v92vh63"; }
+  ];
+
   mavenProfile_2_0_9 = map (obj: fetchMaven {
     version = "2.0.9";
     baseName = "maven-profile";
@@ -11,4 +22,15 @@ rec {
     { type = "jar"; sha512 = "2v315cv62k3lmi23msk5rj9bijsafcajw7053jdzzk4zv03vdpdndm5cr995azrpdcvkcdq2m8zh5pdf44nzcdf2rvpm4nxdc2wr5rl"; }
     { type = "pom"; sha512 = "05iif04frjgbmg7zb3jygn9av2ja48vs2z35b2zrlmgf3s1fxqlr4wxylrrmmk8r0hvg4qmg5j0inm414n0v4ipn08hrpzik5nhdfgy"; }
   ];
+
+  mavenProfile_2_2_1 = map (obj: fetchMaven {
+    version = "2.2.1";
+    baseName = "maven-profile";
+    package = "/org/apache/maven";
+    sha512 = obj.sha512;
+    type = obj.type;
+  }) [
+    { type = "jar"; sha512 = "2v315cv62k3lmi23msk5rj9bijsafcajw7053jdzzk4zv03vdpdndm5cr995azrpdcvkcdq2m8zh5pdf44nzcdf2rvpm4nxdc2wr5rl"; }
+    { type = "pom"; sha512 = "05iif04frjgbmg7zb3jygn9av2ja48vs2z35b2zrlmgf3s1fxqlr4wxylrrmmk8r0hvg4qmg5j0inm414n0v4ipn08hrpzik5nhdfgy"; }
+  ];
 }
diff --git a/pkgs/development/java-modules/maven/project.nix b/pkgs/development/java-modules/maven/project.nix
index 0d88850fb5d..142a311feed 100644
--- a/pkgs/development/java-modules/maven/project.nix
+++ b/pkgs/development/java-modules/maven/project.nix
@@ -1,6 +1,17 @@
 { fetchMaven }:
 
 rec {
+  mavenProject_2_0_6 = map (obj: fetchMaven {
+    version = "2.0.6";
+    baseName = "maven-project";
+    package = "/org/apache/maven";
+    sha512 = obj.sha512;
+    type = obj.type;
+  }) [
+    { type = "jar"; sha512 = "12k56956ad8r5fpz5ilxy1i2msg4vnpcyqc7zq9b5ncqx890bcnl9xl5f5y0bkj6l6688z6vrwi28rgj35a77x3wiwcvhgrgxyfy53a"; }
+    { type = "pom"; sha512 = "13z607rjazzrs3rjw6hlhpw6jip85lgdkvnkm1j17wsbhywa53x45ydyg1hzrcax8xr5zxn7mkrryp4wwwm4ihhsaz3nq8bh12yrh8p"; }
+  ];
+
   mavenProject_2_0_9 = map (obj: fetchMaven {
     version = "2.0.9";
     baseName = "maven-project";
diff --git a/pkgs/development/java-modules/maven/reporting-api.nix b/pkgs/development/java-modules/maven/reporting-api.nix
index ea808848911..36818dc57e0 100644
--- a/pkgs/development/java-modules/maven/reporting-api.nix
+++ b/pkgs/development/java-modules/maven/reporting-api.nix
@@ -1,6 +1,17 @@
 { fetchMaven }:
 
 rec {
+  mavenReportingApi_2_0_6 = map (obj: fetchMaven {
+    version = "2.0.6";
+    baseName = "maven-reporting-api";
+    package = "/org/apache/maven/reporting";
+    sha512 = obj.sha512;
+    type = obj.type;
+  }) [
+    { type = "jar"; sha512 = "236xqa5bqih3lkfwdmfsb4wgkn8mllnzpnr4dhzch2jlhcsvl4fm1zmawk1njd8ibq9dyfg3n41a6hc8ydndh0ffxdm1mjnch9bv1da"; }
+    { type = "pom"; sha512 = "3vlfls0g1bjrjpgzv6zlfglr1gxwm9m6zm88m9ij8ap934cxrzqj7pkqyx0s2vc8j700xgrwj57ahmfdrdi4v1arav1m1790plbip3y"; }
+  ];
+
   mavenReportingApi_2_0_9 = map (obj: fetchMaven {
     version = "2.0.9";
     baseName = "maven-reporting-api";
diff --git a/pkgs/development/java-modules/maven/repository-metadata.nix b/pkgs/development/java-modules/maven/repository-metadata.nix
index 125788c54f9..7e29ada0512 100644
--- a/pkgs/development/java-modules/maven/repository-metadata.nix
+++ b/pkgs/development/java-modules/maven/repository-metadata.nix
@@ -1,6 +1,17 @@
 { fetchMaven }:
 
 rec {
+  mavenRepositoryMetadata_2_0_6 = map (obj: fetchMaven {
+    version = "2.0.6";
+    baseName = "maven-repository-metadata";
+    package = "/org/apache/maven";
+    sha512 = obj.sha512;
+    type = obj.type;
+  }) [
+    { type = "jar"; sha512 = "3qh52jisq2facab5nw35pazf99z1yn8pfklvy8hcczd4dab1pj115jimfhpx48mmlaydaw50m006imfvlivxnadfxfk3887acmhp7bv"; }
+    { type = "pom"; sha512 = "2sg2n3wxfanhf4jgmp2q9lh2hsnch54mzgh1clna2ywnnwh88cn37c9m9b6a0qgdc1m7yzlfg8r3k77ypfa3aa7hr3f9b2hi2k4pb0c"; }
+  ];
+
   mavenRepositoryMetadata_2_0_9 = map (obj: fetchMaven {
     version = "2.0.9";
     baseName = "maven-repository-metadata";
@@ -11,4 +22,15 @@ rec {
     { type = "jar"; sha512 = "2np435shcca1jka1gdjxs4bzzayfnfzncpnxhlfy59b32vfpvf5v0kca0zgyx7251ghhb2ks2xxd798rbzvr0gzivicwdrnd5x8g0hm"; }
     { type = "pom"; sha512 = "27b9z80qdkn7p4fs6k87a5i926c3dsr6jmq4rz8dyiml1svqsvvghzz59cby6n8wkx7wn003wk28jzc08x53vbk5zsvcg9ckslxhjyw"; }
   ];
+
+  mavenRepositoryMetadata_2_2_1 = map (obj: fetchMaven {
+    version = "2.2.1";
+    baseName = "maven-repository-metadata";
+    package = "/org/apache/maven";
+    sha512 = obj.sha512;
+    type = obj.type;
+  }) [
+    { type = "jar"; sha512 = "2np435shcca1jka1gdjxs4bzzayfnfzncpnxhlfy59b32vfpvf5v0kca0zgyx7251ghhb2ks2xxd798rbzvr0gzivicwdrnd5x8g0hm"; }
+    { type = "pom"; sha512 = "27b9z80qdkn7p4fs6k87a5i926c3dsr6jmq4rz8dyiml1svqsvvghzz59cby6n8wkx7wn003wk28jzc08x53vbk5zsvcg9ckslxhjyw"; }
+  ];
 }
diff --git a/pkgs/development/java-modules/maven/settings.nix b/pkgs/development/java-modules/maven/settings.nix
index 73d707144bd..19f0a1ae24d 100644
--- a/pkgs/development/java-modules/maven/settings.nix
+++ b/pkgs/development/java-modules/maven/settings.nix
@@ -1,6 +1,17 @@
 { fetchMaven }:
 
 rec {
+  mavenSettings_2_0_6 = map (obj: fetchMaven {
+    version = "2.0.6";
+    baseName = "maven-settings";
+    package = "/org/apache/maven";
+    sha512 = obj.sha512;
+    type = obj.type;
+  }) [
+    { type = "jar"; sha512 = "3yvxlk0d40p1i0vwf4ba6k45kikcvip1vvr86k6cnhs86gfy6w1b4kw4hc6p23i978cgcl19g79m0l40nsxpav9hc07573k47ammclv"; }
+    { type = "pom"; sha512 = "03cz2z90h9c3lssl53glbpz9hflsgb3a14i4xr5p7lpm993c07zn7xp2f6sjcdq7b774spbiww0alll9cz2vs8m7pvvwnbxk0s09d7l"; }
+  ];
+
   mavenSettings_2_0_9 = map (obj: fetchMaven {
     version = "2.0.9";
     baseName = "maven-settings";
@@ -11,4 +22,15 @@ rec {
     { type = "jar"; sha512 = "1hy1wz2bb7f9y0rr5961zhalpbwmk0fhw49k0l527w897lz4zw7lnb8xnx530s6hmn58zqj7iwkx4spz2fahps4ss1ryk0601rzgv4a"; }
     { type = "pom"; sha512 = "3i2nq3r6piwhv265jhsj9hqriw6113vkqllx5s4kd4y2dspjxh6l9xprrw347nkw68904dyq9hdx76fx2nzjd16ldh41pim5lw8r15n"; }
   ];
+
+  mavenSettings_2_2_1 = map (obj: fetchMaven {
+    version = "2.2.1";
+    baseName = "maven-settings";
+    package = "/org/apache/maven";
+    sha512 = obj.sha512;
+    type = obj.type;
+  }) [
+    { type = "jar"; sha512 = "1hy1wz2bb7f9y0rr5961zhalpbwmk0fhw49k0l527w897lz4zw7lnb8xnx530s6hmn58zqj7iwkx4spz2fahps4ss1ryk0601rzgv4a"; }
+    { type = "pom"; sha512 = "3i2nq3r6piwhv265jhsj9hqriw6113vkqllx5s4kd4y2dspjxh6l9xprrw347nkw68904dyq9hdx76fx2nzjd16ldh41pim5lw8r15n"; }
+  ];
 }
diff --git a/pkgs/development/java-modules/maven/shared-incremental.nix b/pkgs/development/java-modules/maven/shared-incremental.nix
new file mode 100644
index 00000000000..2d4ec372be4
--- /dev/null
+++ b/pkgs/development/java-modules/maven/shared-incremental.nix
@@ -0,0 +1,14 @@
+{ fetchMaven }:
+
+rec {
+  mavenSharedIncremental_1_1 = map (obj: fetchMaven {
+    version = "1.1";
+    baseName = "maven-shared-incremental";
+    package = "/org/apache/maven/shared";
+    sha512 = obj.sha512;
+    type = obj.type;
+  }) [
+    { type = "jar"; sha512 = "1g2gsk3s5v5dg6y81a2046aqf5v19jn6i0jwha78xi3gyx7ajgxkdn2wswf9gdxxvc44qk6lzn33bl3pk3vl1b84h2hdxz7yyhajbfr"; }
+    { type = "pom"; sha512 = "2fqj1p1059v462casy2mzj1bg8mawb5lihx5430px9440vyl1iggqg598r6798162m8c7ilav3x71x763rchhskpqakfkvydkjhrjfr"; }
+  ];
+}
diff --git a/pkgs/development/java-modules/maven/shared-utils.nix b/pkgs/development/java-modules/maven/shared-utils.nix
new file mode 100644
index 00000000000..9b56075383d
--- /dev/null
+++ b/pkgs/development/java-modules/maven/shared-utils.nix
@@ -0,0 +1,14 @@
+{ fetchMaven }:
+
+rec {
+  mavenSharedUtils_0_1 = map (obj: fetchMaven {
+    version = "0.1";
+    baseName = "maven-shared-utils";
+    package = "/org/apache/maven/shared";
+    sha512 = obj.sha512;
+    type = obj.type;
+  }) [
+    { type = "jar"; sha512 = "0xf4pb0bh2kr3qx1yqav528886fdvsb801mq22hnbs8cbaghgibcb0n8w6rbiyd59y1fmiacyhhcc18ahcxv71531m704w5gydrwx9k"; }
+    { type = "pom"; sha512 = "0w5ryz3kdx6c10bwhbdpic567cf1b4918anncls9gzy89lfc4lj4lnyhapv7lsfp3fzifas618m7mh4pv5gdpjbml3fgjnqcq6895g6"; }
+  ];
+}
diff --git a/pkgs/development/java-modules/maven/surefire-api.nix b/pkgs/development/java-modules/maven/surefire-api.nix
new file mode 100644
index 00000000000..b696beae4c4
--- /dev/null
+++ b/pkgs/development/java-modules/maven/surefire-api.nix
@@ -0,0 +1,14 @@
+{ fetchMaven }:
+
+rec {
+  mavenSurefireBooter_2_12_4 = map (obj: fetchMaven {
+    version = "2.12.4";
+    baseName = "maven-surefire-booter";
+    package = "/org/apache/maven/surefire";
+    sha512 = obj.sha512;
+    type = obj.type;
+  }) [
+    { type = "jar"; sha512 = "0xf4pb0bh2kr3qx1yqav528886fdvsb801mq22hnbs8cbaghgibcb0n8w6rbiyd59y1fmiacyhhcc18ahcxv71531m704w5gydrwx9k"; }
+    { type = "pom"; sha512 = "0w5ryz3kdx6c10bwhbdpic567cf1b4918anncls9gzy89lfc4lj4lnyhapv7lsfp3fzifas618m7mh4pv5gdpjbml3fgjnqcq6895g6"; }
+  ];
+}
diff --git a/pkgs/development/java-modules/maven/surefire-booter.nix b/pkgs/development/java-modules/maven/surefire-booter.nix
new file mode 100644
index 00000000000..b696beae4c4
--- /dev/null
+++ b/pkgs/development/java-modules/maven/surefire-booter.nix
@@ -0,0 +1,14 @@
+{ fetchMaven }:
+
+rec {
+  mavenSurefireBooter_2_12_4 = map (obj: fetchMaven {
+    version = "2.12.4";
+    baseName = "maven-surefire-booter";
+    package = "/org/apache/maven/surefire";
+    sha512 = obj.sha512;
+    type = obj.type;
+  }) [
+    { type = "jar"; sha512 = "0xf4pb0bh2kr3qx1yqav528886fdvsb801mq22hnbs8cbaghgibcb0n8w6rbiyd59y1fmiacyhhcc18ahcxv71531m704w5gydrwx9k"; }
+    { type = "pom"; sha512 = "0w5ryz3kdx6c10bwhbdpic567cf1b4918anncls9gzy89lfc4lj4lnyhapv7lsfp3fzifas618m7mh4pv5gdpjbml3fgjnqcq6895g6"; }
+  ];
+}
diff --git a/pkgs/development/java-modules/maven/surefire-common.nix b/pkgs/development/java-modules/maven/surefire-common.nix
new file mode 100644
index 00000000000..0d1bd53721c
--- /dev/null
+++ b/pkgs/development/java-modules/maven/surefire-common.nix
@@ -0,0 +1,14 @@
+{ fetchMaven }:
+
+rec {
+  mavenSurefireCommon_2_12_4 = map (obj: fetchMaven {
+    version = "2.12.4";
+    baseName = "maven-surefire-common";
+    package = "/org/apache/maven/surefire";
+    sha512 = obj.sha512;
+    type = obj.type;
+  }) [
+    { type = "jar"; sha512 = "0xf4pb0bh2kr3qx1yqav528886fdvsb801mq22hnbs8cbaghgibcb0n8w6rbiyd59y1fmiacyhhcc18ahcxv71531m704w5gydrwx9k"; }
+    { type = "pom"; sha512 = "0w5ryz3kdx6c10bwhbdpic567cf1b4918anncls9gzy89lfc4lj4lnyhapv7lsfp3fzifas618m7mh4pv5gdpjbml3fgjnqcq6895g6"; }
+  ];
+}
diff --git a/pkgs/development/java-modules/maven/toolchain.nix b/pkgs/development/java-modules/maven/toolchain.nix
new file mode 100644
index 00000000000..14e6866ee32
--- /dev/null
+++ b/pkgs/development/java-modules/maven/toolchain.nix
@@ -0,0 +1,25 @@
+{ fetchMaven }:
+
+rec {
+  mavenToolchain_1_0 = map (obj: fetchMaven {
+    version = "1.0";
+    baseName = "maven-toolchain";
+    package = "/org/apache/maven";
+    sha512 = obj.sha512;
+    type = obj.type;
+  }) [
+    { type = "jar"; sha512 = "34kxv3l3676ddrsj2k02f9fmphcq16avafka950d5dclrcx7w37wgxx3gcf6zfixfx9zlbb7annsa05y8f0rx97g13rkqdfdj1wknky"; }
+    { type = "pom"; sha512 = "0arkdm0bii7cm0g8qzzfih1jk9j7myn8w2ccr6j01wsj08gv7cbjr5k9jx1iwy1vzvhhsmsj6grq678zsgbvh4msn1s44i744x4fhvy"; }
+  ];
+
+  mavenToolchain_2_0_9 = map (obj: fetchMaven {
+    version = "2.0.9";
+    baseName = "maven-toolchain";
+    package = "/org/apache/maven";
+    sha512 = obj.sha512;
+    type = obj.type;
+  }) [
+    { type = "jar"; sha512 = "34kxv3l3676ddrsj2k02f9fmphcq16avafka950d5dclrcx7w37wgxx3gcf6zfixfx9zlbb7annsa05y8f0rx97g13rkqdfdj1wknky"; }
+    { type = "pom"; sha512 = "0arkdm0bii7cm0g8qzzfih1jk9j7myn8w2ccr6j01wsj08gv7cbjr5k9jx1iwy1vzvhhsmsj6grq678zsgbvh4msn1s44i744x4fhvy"; }
+  ];
+}
diff --git a/pkgs/development/java-modules/mavenPlugins.nix b/pkgs/development/java-modules/mavenPlugins.nix
index 17d4c86ba99..15be1594117 100644
--- a/pkgs/development/java-modules/mavenPlugins.nix
+++ b/pkgs/development/java-modules/mavenPlugins.nix
@@ -9,8 +9,134 @@ let
 in rec {
   inherit mavenbuild fetchMaven poms;
 
-  # Standard plugins used by pretty much every Maven build
-  mavenDefault = lib.flatten [ aetherUtil_0_9_0_M2 bsh_2_0_b4 classworlds_1_1 commonsCli_1_0 commonsLang_2_3 mavenArtifact_2_0_9 mavenArtifact_3_0_3 mavenArtifactManager_2_0_9 mavenClean_2_5 mavenCommonArtifactFilters_1_4 mavenCompiler_3_1 mavenCore_2_0_9 mavenDependencyTree_2_1 mavenDoxiaSinkApi_1_0_alpha10 mavenEnforcer_1_3_1 mavenEnforcerApi_1_3_1 mavenEnforcerRules_1_3_1 mavenErrorDiagnostics_2_0_9 mavenInstall_2_4 mavenJar_2_4 mavenModel_2_0_9 mavenModel_3_0_3 mavenMonitor_2_0_9 mavenPluginApi_2_0_6 mavenPluginApi_2_0_9 mavenPluginApi_3_0_3 mavenPluginDescriptor_2_0_9 mavenPluginParameterDocumenter_2_0_9 mavenPluginRegistry_2_0_9 mavenProfile_2_0_9 mavenProject_2_0_9 mavenReplacer_1_5_3 mavenReportingApi_2_0_9 mavenRepositoryMetadata_2_0_9 mavenResources_2_6 mavenSettings_2_0_9 mavenSurefire_2_17 plexusComponentAnnotations_1_5_5 plexusContainerDefault_1_0_alpha9_stable1 plexusI18n_1_0_beta6 plexusInteractivityApi_1_0_alpha4 plexusUtils_1_5_8 plexusUtils_2_0_6 plexusUtils_3_0 ] ++ (with poms; [ aether_0_9_0_M2 animalSnifferParent_1_11 apache_10 apache_11 apache_13 apache_3 apache_4 apache_6 beanshell_2_0_b4 codehausParent_4 doxia_1_0_alpha10 doxia_1_0 enforcer_1_3_1 hamcrestParent_1_3 maven_2_0_6 maven_2_0_9 maven_3_0_3 mavenParent_15 mavenParent_21 mavenParent_22 mavenParent_23 mavenParent_5 mavenParent_6 mavenParent_8 mavenPlugins_22 mavenPlugins_23 mavenPlugins_24 mavenReporting_2_0_9 mavenSharedComponents_17 mavenSharedComponents_19 mojoParent_32 plexus_1_0_4 plexus_2_0_2 plexus_2_0_7 plexusComponents_1_1_4 plexusContainers_1_0_3 plexusContainers_1_5_5 sonatypeForgeParent_5 sonatypeParent_7 sonatypeSpiceParent_16 surefire_2_17 ]);
+  # "Minimal"
+  mavenMinimal = lib.flatten
+[
+classworlds_1_1
+commonsCli_1_0
+findbugsJsr305_2_0_1
+junit_3_8_1
+mavenArchiver_2_5
+mavenArtifact_2_0_6
+mavenArtifact_2_0_9
+mavenArtifactManager_2_0_6
+mavenArtifactManager_2_0_9
+mavenArtifactManager_2_2_1
+mavenClean_2_5
+mavenCompiler_3_1
+mavenCore_2_0_6
+mavenCore_2_0_9
+mavenCore_2_2_1
+mavenDoxiaSinkApi_1_0_alpha7
+mavenErrorDiagnostics_2_0_6
+mavenErrorDiagnostics_2_0_9
+mavenErrorDiagnostics_2_2_1
+mavenFiltering_1_1
+mavenInstall_2_4
+mavenJar_2_4
+mavenModel_2_0_6
+mavenModel_2_0_9
+mavenModel_2_2_1
+mavenMonitor_2_0_6
+mavenMonitor_2_0_9
+mavenMonitor_2_2_1
+mavenPluginDescriptor_2_0_6
+mavenPluginDescriptor_2_0_9
+mavenPluginDescriptor_2_2_1
+mavenPluginParameterDocumenter_2_0_6
+mavenPluginParameterDocumenter_2_0_9
+mavenPluginParameterDocumenter_2_2_1
+mavenProfile_2_0_6
+mavenProfile_2_0_9
+mavenProfile_2_2_1
+mavenProject_2_0_6
+mavenProject_2_0_9
+mavenPluginAnnotations_3_1
+mavenPluginApi_2_0_6
+mavenPluginApi_2_0_9
+mavenPluginApi_2_2_1
+mavenPluginRegistry_2_0_6
+mavenPluginRegistry_2_0_9
+mavenPluginRegistry_2_2_1
+mavenReportingApi_2_0_6
+mavenReportingApi_2_0_9
+mavenRepositoryMetadata_2_0_6
+mavenRepositoryMetadata_2_0_9
+mavenRepositoryMetadata_2_2_1
+mavenResources_2_6
+mavenSettings_2_0_6
+mavenSettings_2_0_9
+mavenSettings_2_2_1
+mavenSharedIncremental_1_1
+mavenSharedUtils_0_1
+mavenSurefire_2_12_4
+mavenSurefireApi_2_12_4
+mavenSurefireBooter_2_12_4
+mavenSurefireCommon_2_12_4
+mavenToolchain_1_0
+mavenToolchain_2_0_9
+plexusBuildApi_0_0_4
+plexusCompilerApi_2_2
+plexusContainerDefault_1_0_alpha9_stable1
+plexusInteractivityApi_1_0_alpha4
+plexusInterpolation_1_13
+plexusUtils_1_5_1
+plexusUtils_2_0_5
+plexusUtils_3_0
+]
+++
+(with
+poms;
+[
+apache_3
+apache_4
+apache_5
+apache_6
+apache_9
+apache_10
+apache_11
+apache_13
+doxia_1_0_alpha7
+maven_2_0_6
+maven_2_0_9
+maven_2_2_1
+mavenParent_5
+mavenParent_8
+mavenParent_11
+mavenParent_13
+mavenParent_21
+mavenParent_22
+mavenParent_23
+mavenPlugins_22
+mavenPlugins_23
+mavenPlugins_24
+mavenPluginTools_3_1
+mavenReporting_2_0_6
+mavenReporting_2_0_9
+mavenSharedComponents_12
+mavenSharedComponents_17
+mavenSharedComponents_18
+mavenSharedComponents_19
+plexus_1_0_4
+plexus_1_0_11
+plexus_2_0_3
+plexus_2_0_6
+plexus_2_0_7
+plexus_3_3_1
+plexusCompiler_2_2
+plexusComponents_1_1_15
+plexusComponents_1_3_1
+plexusComponentAnnotations_1_5_5
+plexusContainers_1_0_3
+plexusContainers_1_5_5
+sonatypeForgeParent_3
+sonatypeForgeParent_5
+sonatypeForgeParent_10
+sonatypeSpiceParent_10
+sonatypeSpiceParent_16
+sonatypeSpiceParent_17
+surefire_2_12_4
+]);
 
   animalSniffer_1_11 = map (obj: fetchMaven {
     version = "1.11";
@@ -100,6 +226,17 @@ in rec {
     { type = "jar"; sha512 = "3j8smsx6wk085iic5qhknrszixxna6szmvk2rn9zkn75ffjr7ham72hw9cmxf5160j73n8f2cmcbw1x462fqy12fqqpmzx08i1sbwcv"; }
   ];
 
+  mavenSurefire_2_12_4 = map (obj: fetchMaven rec {
+    version = "2.12.4";
+    baseName = "maven-surefire-plugin";
+    package = "/org/apache/maven/plugins";
+    sha512 = obj.sha512;
+    type = obj.type;
+  }) [
+    { type = "pom"; sha512 = "3qkzmh5fk3s7y3qy91qck1nc0yadwsizxy61wp410dspsd73cchqll7vjl11cj6k5kywjxsl9dihy2gp949nh8380lbvs11g83wrgmv"; }
+    { type = "jar"; sha512 = "2sjq2l8i97h3ay8wwrsi75cfs9d1im5ar2sn2zv4q6xsv4v3hh5y481l9xwc5dnbcfdjs38ald0z60pxpcyiqrng6h69s2ws8fhb0mm"; }
+  ];
+
   mavenSurefire_2_17 = map (obj: fetchMaven rec {
     version = "2.17";
     baseName = "maven-surefire-plugin";
diff --git a/pkgs/development/java-modules/plexus/build-api.nix b/pkgs/development/java-modules/plexus/build-api.nix
new file mode 100644
index 00000000000..2425a6f12ba
--- /dev/null
+++ b/pkgs/development/java-modules/plexus/build-api.nix
@@ -0,0 +1,14 @@
+{ fetchMaven }:
+
+rec {
+  plexusBuildApi_0_0_4 = map (obj: fetchMaven {
+    version = "0.0.4";
+    baseName = "plexus-build-api";
+    package = "/org/sonatype/plexus";
+    sha512 = obj.sha512;
+    type = obj.type;
+  }) [
+    { type = "jar"; sha512 = "0ihr946rd2cwc1qsi8g104vpyz1ml5ypl3374z3rhlmm4i0xgn6vsa9sg8bnh1848klhxsp11i0gm4adg6lzk3s88mqm5b4wlbsdvv2"; }
+    { type = "pom"; sha512 = "1135ca387fvzjb04j8z93jmy61zpi2w7a6c6rq9xxk33xz9nxzzwvca7k40j6jsj0bmjbswrpdck7qh2921rn3j4vfsihbi9g7mb31r"; }
+  ];
+}
diff --git a/pkgs/development/java-modules/plexus/compiler-api.nix b/pkgs/development/java-modules/plexus/compiler-api.nix
new file mode 100644
index 00000000000..2ef5d3cdab1
--- /dev/null
+++ b/pkgs/development/java-modules/plexus/compiler-api.nix
@@ -0,0 +1,14 @@
+{ fetchMaven }:
+
+rec {
+  plexusCompilerApi_2_2 = map (obj: fetchMaven {
+    version = "2.2";
+    baseName = "plexus-compiler-api";
+    package = "/org/codehaus/plexus";
+    sha512 = obj.sha512;
+    type = obj.type;
+  }) [
+    { type = "jar"; sha512 = "3by7icjfiymp7g2v1ci5dqwml6ibzh2njyg2w43kvaz3ydcxkzmfg5s97wsdqjsii7vdgqyhr16ydsn6mr90wbjvsi6wasaq1rqa812"; }
+    { type = "pom"; sha512 = "0pdl78hp921lgkfya54wl8hxgm1c5474j1p921q5ix1knx1rlr4klpjwx212wy2m7b6bxq0bkf8n66mqjr72rh2rh308qij00ymrga8"; }
+  ];
+}
diff --git a/pkgs/development/java-modules/plexus/interpolation.nix b/pkgs/development/java-modules/plexus/interpolation.nix
new file mode 100644
index 00000000000..17660f0804c
--- /dev/null
+++ b/pkgs/development/java-modules/plexus/interpolation.nix
@@ -0,0 +1,14 @@
+{ fetchMaven }:
+
+rec {
+  plexusInterpolation_1_13 = map (obj: fetchMaven {
+    version = "1.13";
+    baseName = "plexus-interpolation";
+    package = "/org/codehaus/plexus";
+    sha512 = obj.sha512;
+    type = obj.type;
+  }) [
+    { type = "jar"; sha512 = "0sm1kaxsvn8007br7nr9ncjppmfkp8nzr6ipwwx86idai9bqcsm4kh2scxf893s4jf2ii7f5106dd5w4h7bw67csalhqqzi1zpndbk4"; }
+    { type = "pom"; sha512 = "3hlv9l82yxjbnaf2vqq6p3w38jq2id15a2yjg6wj810fl2286zz5ci3g3x7x0z0xdrxrrfvswns92v25197vpg0dki113lwdbw4bsvr"; }
+  ];
+}
diff --git a/pkgs/development/java-modules/plexus/utils.nix b/pkgs/development/java-modules/plexus/utils.nix
index 672a43455c9..17dc1acdf1f 100644
--- a/pkgs/development/java-modules/plexus/utils.nix
+++ b/pkgs/development/java-modules/plexus/utils.nix
@@ -12,6 +12,17 @@ rec {
     { type = "pom"; sha512 = "0vbzdfsdcc4cq7hdqzb1vdfxp23vnavq7z4qmmlb4d4fiqj5wqdgagrs43gl7yzca2azpyj3kyxgaipimi7gck07jcsz0pzljkplk4w"; }
   ];
 
+  plexusUtils_1_5_1 = map (obj: fetchMaven {
+    version = "1.5.1";
+    baseName = "plexus-utils";
+    package = "/org/codehaus/plexus";
+    sha512 = obj.sha512;
+    type = obj.type;
+  }) [
+    { type = "jar"; sha512 = "00vf59sg0wa4kip1m365xh3ngggvnr7avkf1mwsljyag5h8pb4fhpba550ka2mbpp10z8d7mjhj3wxinvf19m2bmrjmqvdxiwraa5jh"; }
+    { type = "pom"; sha512 = "161cdrgjrw2cab4lf189hwa4s1lh42fsahjcjkir696sx0m9bmmxgjbhwxl1l8kpaxn5p6jf701bx16gry393pws636vy59nvnnx1sw"; }
+  ];
+
   plexusUtils_1_5_8 = map (obj: fetchMaven {
     version = "1.5.8";
     baseName = "plexus-utils";
@@ -23,6 +34,17 @@ rec {
     { type = "pom"; sha512 = "06z4gkq3bh2pwyj8pvaly9fihd8gbgcqp3jxl05vkj2rcdb4jw3lw3hwn8f8ggqi17i2fdm8cbndkqgr9vdgiz45p8f1nx8kjlqikbi"; }
   ];
 
+  plexusUtils_2_0_5 = map (obj: fetchMaven {
+    version = "2.0.5";
+    baseName = "plexus-utils";
+    package = "/org/codehaus/plexus";
+    sha512 = obj.sha512;
+    type = obj.type;
+  }) [
+    { type = "jar"; sha512 = "3g72mxvlsf18hl1vn9sq4i13nlpd66fkn2l8d96883f4n638sx031f8cnx6f08my3rfc67pypy4lsiagx2rj2x5ccqp9g9kzvbh4i5w"; }
+    { type = "pom"; sha512 = "2rkkshqf3ahjijvr64ndzh10iksbz7pj0618drvg9iklnpv6i6y904fi31xjg7vxb3fy17k3mvi49pr2jxznbf1c8ndwbyawlvmw9j7"; }
+  ];
+
   plexusUtils_2_0_6 = map (obj: fetchMaven {
     version = "2.0.6";
     baseName = "plexus-utils";
diff --git a/pkgs/development/java-modules/poms.nix b/pkgs/development/java-modules/poms.nix
index 39dc9528140..3e5ef87223f 100644
--- a/pkgs/development/java-modules/poms.nix
+++ b/pkgs/development/java-modules/poms.nix
@@ -33,6 +33,14 @@ rec {
     type = "pom";
   };
 
+  apache_5 = fetchMaven {
+    version = "5";
+    baseName = "apache";
+    package = "/org/apache";
+    sha512 = "3yb998i1azfxdjk2ndcc19gzx12i0bdi6jqwp5mhwp9ac5dfsplkb5np4bkpsb948y8kpvw1pyvkx8rw0a0rvkxqzxr98ng5nq80vw6";
+    type = "pom";
+  };
+
   apache_6 = fetchMaven {
     version = "6";
     baseName = "apache";
@@ -41,6 +49,14 @@ rec {
     type = "pom";
   };
 
+  apache_9 = fetchMaven {
+    version = "9";
+    baseName = "apache";
+    package = "/org/apache";
+    sha512 = "3yb998i1azfxdjk2ndcc19gzx12i0bdi6jqwp5mhwp9ac5dfsplkb5np4bkpsb948y8kpvw1pyvkx8rw0a0rvkxqzxr98ng5nq80vw6";
+    type = "pom";
+  };
+
   apache_10 = fetchMaven {
     version = "10";
     baseName = "apache";
@@ -81,6 +97,14 @@ rec {
     type = "pom";
   };
 
+  doxia_1_0_alpha7 = fetchMaven {
+    version = "1.0-alpha-7";
+    baseName = "doxia";
+    package = "/org/apache/maven/doxia";
+    sha512 = "0fg3l7dyi0c7r1h9rzjn23gv57kc67jpzlcji6yh4nawp3byfbz1rq8wnbj3av3wd29v9h2ff34p06ia9wxbs8q3kz4xy31w7sw7fxg";
+    type = "pom";
+  };
+
   doxia_1_0_alpha10 = fetchMaven {
     version = "1.0-alpha-10";
     baseName = "doxia";
@@ -129,6 +153,14 @@ rec {
     type = "pom";
   };
 
+  maven_2_2_1 = fetchMaven {
+    version = "2.2.1";
+    baseName = "maven";
+    package = "/org/apache/maven";
+    sha512 = "2b3wfqxbg0v2lm82a7nzw8wzw708isfrnzriy90bk89dhnj59qzpgvwrjbhs26a32gnpii5ivivh1msq51k1b7j5knmyf0hi1v0blw0";
+    type = "pom";
+  };
+
   maven_3_0_3 = fetchMaven {
     version = "3.0.3";
     baseName = "maven";
@@ -217,6 +249,22 @@ rec {
     type = "pom";
   };
 
+  mavenPluginTools_3_1 = fetchMaven {
+    version = "3.1";
+    baseName = "maven-plugin-tools";
+    package = "/org/apache/maven/plugin-tools";
+    sha512 = "07flf37pkkc34466bnzi4rfwdlgvd3ydasm39qzy2hybxv26306zrhipglmgsjvd84z07dscij4n7qdd2jkx9hrkm900hid4xwvxzrs";
+    type = "pom";
+  };
+
+  mavenReporting_2_0_6 = fetchMaven {
+    version = "2.0.6";
+    baseName = "maven-reporting";
+    package = "/org/apache/maven/reporting";
+    sha512 = "3bi678sg28yxhlby4d3a6mq9fhg1qnjb57kbkhi7dfx9g0c1p6cxhg8cixjz9wv31lkjpspbpp1fq0z29a93lqrjqczlg8a7i1sg554";
+    type = "pom";
+  };
+
   mavenReporting_2_0_9 = fetchMaven {
     version = "2.0.9";
     baseName = "maven-reporting";
@@ -225,6 +273,14 @@ rec {
     type = "pom";
   };
 
+  mavenSharedComponents_12 = fetchMaven {
+    version = "12";
+    baseName = "maven-shared-components";
+    package = "/org/apache/maven/shared";
+    sha512 = "3f2pifiapx09h3wv9lglm0mkd9gid268lfz27jhqb4ck2yxna31872db7cj5c9lsg0pl2l3bwgp526whq14zj2qffqxrdq8mn9m0rhy";
+    type = "pom";
+  };
+
   mavenSharedComponents_17 = fetchMaven {
     version = "17";
     baseName = "maven-shared-components";
@@ -233,6 +289,14 @@ rec {
     type = "pom";
   };
 
+  mavenSharedComponents_18 = fetchMaven {
+    version = "18";
+    baseName = "maven-shared-components";
+    package = "/org/apache/maven/shared";
+    sha512 = "2qqabrvgs4kb14v28qkfwj16n715mj5mh4m8aw0dybi5igmrvwh1d8jsjggdfbh929m6499w8x5s6aw0gbzmfzr3wjkz54dqxnm49p0";
+    type = "pom";
+  };
+
   mavenSharedComponents_19 = fetchMaven {
     version = "19";
     baseName = "maven-shared-components";
@@ -257,6 +321,14 @@ rec {
     type = "pom";
   };
 
+  plexus_1_0_11 = fetchMaven {
+    version = "1.0.11";
+    baseName = "plexus";
+    package = "/org/codehaus/plexus";
+    sha512 = "20fb1yvg26wg3lih55m8m4i1idiffyg3jlkvazmxqqvnahz2llgd5cfvqcrzg8lkinnypr4ic5glci4lza46k1sfl5nrviyfx0n7kgr";
+    type = "pom";
+  };
+
   plexus_2_0_2 = fetchMaven {
     version = "2.0.2";
     baseName = "plexus";
@@ -265,6 +337,22 @@ rec {
     type = "pom";
   };
 
+  plexus_2_0_3 = fetchMaven {
+    version = "2.0.3";
+    baseName = "plexus";
+    package = "/org/codehaus/plexus";
+    sha512 = "15adqpm0gz7c0jwjd4yk0k8h4h7vnz15v1fdmzb6rgs6avl1dx84r5l0fqs6b02kw008rg68inii7nl4m5xwqrj807wr8qzrjm02cam";
+    type = "pom";
+  };
+
+  plexus_2_0_6 = fetchMaven {
+    version = "2.0.6";
+    baseName = "plexus";
+    package = "/org/codehaus/plexus";
+    sha512 = "07rrw1yldy4c2qvwv3hcf9rdbr0jf57qsnnv2ai9fajwhjyjkgjixm2zlsid41bm2w8hacg9crzy6nfz8yh1sdh5p767niy9jripq2h";
+    type = "pom";
+  };
+
   plexus_2_0_7 = fetchMaven {
     version = "2.0.7";
     baseName = "plexus";
@@ -273,6 +361,22 @@ rec {
     type = "pom";
   };
 
+  plexus_3_3_1 = fetchMaven {
+    version = "3.3.1";
+    baseName = "plexus";
+    package = "/org/codehaus/plexus";
+    sha512 = "1q1p0sfzkhdpknaf0ysq7vzd0qip9q86z62nwamfh9gdsp7lh99kh6hmxav2daha462c3jra6clfniyqrbvs07jwjhf4c79rwhnqc2q";
+    type = "pom";
+  };
+
+  plexusCompiler_2_2 = fetchMaven {
+    version = "2.2";
+    baseName = "plexus-compiler";
+    package = "/org/codehaus/plexus";
+    sha512 = "26sr1hg214qf65nym85viv1z4nk1bgqahx7n4bq3did49s9ymgz2c08vw7zdlcqws5jndz9n2xlyq285plgv3xx2mxrrsi2r24zmw29";
+    type = "pom";
+  };
+
   plexusComponents_1_1_4 = fetchMaven {
     version = "1.1.4";
     baseName = "plexus-components";
@@ -281,6 +385,22 @@ rec {
     type = "pom";
   };
 
+  plexusComponents_1_1_15 = fetchMaven {
+    version = "1.1.15";
+    baseName = "plexus-components";
+    package = "/org/codehaus/plexus";
+    sha512 = "0lfzdq1wlsnkiapzjs8cqi2kzkaw9lfjhdhmf1pz2x83m5njfx2y59v14wgcs2k4cig8kjr45v4qnmd7mp03k8gginzflc1qi1y7yv6";
+    type = "pom";
+  };
+
+  plexusComponents_1_3_1 = fetchMaven {
+    version = "1.3.1";
+    baseName = "plexus-components";
+    package = "/org/codehaus/plexus";
+    sha512 = "16bnfja035zb508f340y64v4vk7pkldn8bvnxvbk0grk8a76rirsn4dl60x3hgmasgkb0y75gr9qp4y72m079klhgg0mbvcfvslkxqb";
+    type = "pom";
+  };
+
   plexusContainers_1_0_3 = fetchMaven {
     version = "1.0.3";
     baseName = "plexus-containers";
@@ -297,6 +417,14 @@ rec {
     type = "pom";
   };
 
+  sonatypeForgeParent_3 = fetchMaven {
+    version = "3";
+    baseName = "forge-parent";
+    package = "/org/sonatype/forge";
+    sha512 = "20x89zl6k0wgd1gb6ysxm6bmgqxwyz3d7zyjn8bwzkz93k7lxnxm0k7skvha283q9ay4cd2vkjisi5avl1f3wvz89rrwg136gmdlksv";
+    type = "pom";
+  };
+
   sonatypeForgeParent_5 = fetchMaven {
     version = "5";
     baseName = "forge-parent";
@@ -305,6 +433,14 @@ rec {
     type = "pom";
   };
 
+  sonatypeForgeParent_10 = fetchMaven {
+    version = "10";
+    baseName = "forge-parent";
+    package = "/org/sonatype/forge";
+    sha512 = "3fpnvrxfkxpxqdsn6g7w1zyql4v0z9iqbjprhh4c6rldrbvq4h3yh7dl5sw4h7av516zhmb3bkc9ycfdr5gs34sfb6f6x5hk7qc374a";
+    type = "pom";
+  };
+
   sonatypeParent_7 = fetchMaven {
     version = "7";
     baseName = "oss-parent";
@@ -313,6 +449,14 @@ rec {
     type = "pom";
   };
 
+  sonatypeSpiceParent_10 = fetchMaven {
+    version = "10";
+    baseName = "spice-parent";
+    package = "/org/sonatype/spice";
+    sha512 = "0gg2cxqvfmg6jk7qi2f4hcgskpd1ysnf1d5vay8dza40wfbk2vy7qvhgjhg55dpbjkadmsj483hg81qdzwqbxmagd2xr9j9062hbja8";
+    type = "pom";
+  };
+
   sonatypeSpiceParent_16 = fetchMaven {
     version = "16";
     baseName = "spice-parent";
@@ -321,6 +465,22 @@ rec {
     type = "pom";
   };
 
+  sonatypeSpiceParent_17 = fetchMaven {
+    version = "17";
+    baseName = "spice-parent";
+    package = "/org/sonatype/spice";
+    sha512 = "1jqqp5xylm9bjz33wab7mj49xqczvkhpp4aysrcngszxmil61kanpjmn5ks5r0hq4waj0bqnr91p2p9a7ylqnqjs6ib1x9psl5c9cyw";
+    type = "pom";
+  };
+
+  surefire_2_12_4 = fetchMaven {
+    version = "2.12.4";
+    baseName = "surefire";
+    package = "/org/apache/maven/surefire";
+    sha512 = "1zyppjqqwpzcp16g7v49r9fsgdvrny325r583kpis5497ic0qbcczxn53x7s1hnmhgcs33dr0k3alrwl7m574lm2qdgj0s8x18pl6gb";
+    type = "pom";
+  };
+
   surefire_2_17 = fetchMaven {
     version = "2.17";
     baseName = "surefire";
diff --git a/pkgs/top-level/java-packages.nix b/pkgs/top-level/java-packages.nix
index 760dd01e732..a777d57ec2c 100644
--- a/pkgs/top-level/java-packages.nix
+++ b/pkgs/top-level/java-packages.nix
@@ -25,29 +25,43 @@ in {
   inherit (callPackage ../development/java-modules/apache/commons-lang.nix { inherit fetchMaven; })
     commonsLang_2_3;
 
+  inherit (callPackage ../development/java-modules/findbugs/jsr305.nix { inherit fetchMaven; })
+    findbugsJsr305_2_0_1;
+
   inherit (callPackage ../development/java-modules/hamcrest/core.nix { inherit fetchMaven; })
     hamcrestCore_1_3;
 
-  inherit (callPackage ../development/java-modules/junit { inherit mavenbuild; })
+  inherit (callPackage ../development/java-modules/junit { inherit mavenbuild fetchMaven; })
+    junit_3_8_1
     junit_4_12;
 
+  inherit (callPackage ../development/java-modules/maven/archiver.nix { inherit fetchMaven; })
+    mavenArchiver_2_5;
+
   inherit (callPackage ../development/java-modules/maven/artifact.nix { inherit fetchMaven; })
+    mavenArtifact_2_0_6
     mavenArtifact_2_0_9
     mavenArtifact_3_0_3;
 
   inherit (callPackage ../development/java-modules/maven/artifact-manager.nix { inherit fetchMaven; })
-    mavenArtifactManager_2_0_9;
+    mavenArtifactManager_2_0_6
+    mavenArtifactManager_2_0_9
+    mavenArtifactManager_2_2_1;
 
   inherit (callPackage ../development/java-modules/maven/common-artifact-filters.nix { inherit fetchMaven; })
+    mavenCommonArtifactFilters_1_3
     mavenCommonArtifactFilters_1_4;
 
   inherit (callPackage ../development/java-modules/maven/core.nix { inherit fetchMaven; })
-    mavenCore_2_0_9;
+    mavenCore_2_0_6
+    mavenCore_2_0_9
+    mavenCore_2_2_1;
 
   inherit (callPackage ../development/java-modules/maven/dependency-tree.nix { inherit fetchMaven; })
     mavenDependencyTree_2_1;
 
   inherit (callPackage ../development/java-modules/maven/doxia-sink-api.nix { inherit fetchMaven; })
+    mavenDoxiaSinkApi_1_0_alpha7
     mavenDoxiaSinkApi_1_0_alpha10;
 
   inherit (callPackage ../development/java-modules/maven/enforcer.nix { inherit fetchMaven; })
@@ -55,43 +69,98 @@ in {
     mavenEnforcerRules_1_3_1;
 
   inherit (callPackage ../development/java-modules/maven/error-diagnostics.nix { inherit fetchMaven; })
-    mavenErrorDiagnostics_2_0_9;
+    mavenErrorDiagnostics_2_0_6
+    mavenErrorDiagnostics_2_0_9
+    mavenErrorDiagnostics_2_2_1;
+
+  inherit (callPackage ../development/java-modules/maven/filtering.nix { inherit fetchMaven; })
+    mavenFiltering_1_1;
+
+  inherit (callPackage ../development/java-modules/maven-hello { inherit mavenbuild; })
+    mavenHello_1_0;
 
   inherit (callPackage ../development/java-modules/maven/model.nix { inherit fetchMaven; })
+    mavenModel_2_0_6
     mavenModel_2_0_9
+    mavenModel_2_2_1
     mavenModel_3_0_3;
 
   inherit (callPackage ../development/java-modules/maven/monitor.nix { inherit fetchMaven; })
-    mavenMonitor_2_0_9;
+    mavenMonitor_2_0_6
+    mavenMonitor_2_0_9
+    mavenMonitor_2_2_1;
+
+  inherit (callPackage ../development/java-modules/maven/plugin-annotations.nix { inherit fetchMaven; })
+    mavenPluginAnnotations_3_1;
 
   inherit (callPackage ../development/java-modules/maven/plugin-api.nix { inherit fetchMaven; })
     mavenPluginApi_2_0_6
     mavenPluginApi_2_0_9
+    mavenPluginApi_2_2_1
     mavenPluginApi_3_0_3;
 
   inherit (callPackage ../development/java-modules/maven/plugin-descriptor.nix { inherit fetchMaven; })
-    mavenPluginDescriptor_2_0_9;
+    mavenPluginDescriptor_2_0_6
+    mavenPluginDescriptor_2_0_9
+    mavenPluginDescriptor_2_2_1;
 
   inherit (callPackage ../development/java-modules/maven/plugin-parameter-documenter.nix { inherit fetchMaven; })
-    mavenPluginParameterDocumenter_2_0_9;
+    mavenPluginParameterDocumenter_2_0_6
+    mavenPluginParameterDocumenter_2_0_9
+    mavenPluginParameterDocumenter_2_2_1;
 
   inherit (callPackage ../development/java-modules/maven/plugin-registry.nix { inherit fetchMaven; })
-    mavenPluginRegistry_2_0_9;
+    mavenPluginRegistry_2_0_6
+    mavenPluginRegistry_2_0_9
+    mavenPluginRegistry_2_2_1;
 
   inherit (callPackage ../development/java-modules/maven/profile.nix { inherit fetchMaven; })
-    mavenProfile_2_0_9;
+    mavenProfile_2_0_6
+    mavenProfile_2_0_9
+    mavenProfile_2_2_1;
 
   inherit (callPackage ../development/java-modules/maven/project.nix { inherit fetchMaven; })
+    mavenProject_2_0_6
     mavenProject_2_0_9;
 
   inherit (callPackage ../development/java-modules/maven/reporting-api.nix { inherit fetchMaven; })
+    mavenReportingApi_2_0_6
     mavenReportingApi_2_0_9;
 
   inherit (callPackage ../development/java-modules/maven/repository-metadata.nix { inherit fetchMaven; })
-    mavenRepositoryMetadata_2_0_9;
+    mavenRepositoryMetadata_2_0_6
+    mavenRepositoryMetadata_2_0_9
+    mavenRepositoryMetadata_2_2_1;
 
   inherit (callPackage ../development/java-modules/maven/settings.nix { inherit fetchMaven; })
-    mavenSettings_2_0_9;
+    mavenSettings_2_0_6
+    mavenSettings_2_0_9
+    mavenSettings_2_2_1;
+
+  inherit (callPackage ../development/java-modules/maven/shared-incremental.nix { inherit fetchMaven; })
+    mavenSharedIncremental_1_1;
+
+  inherit (callPackage ../development/java-modules/maven/shared-utils.nix { inherit fetchMaven; })
+    mavenSharedUtils_0_1;
+
+  inherit (callPackage ../development/java-modules/maven/surefire-api.nix { inherit fetchMaven; })
+    mavenSurefireApi_2_12_4;
+
+  inherit (callPackage ../development/java-modules/maven/surefire-booter.nix { inherit fetchMaven; })
+    mavenSurefireBooter_2_12_4;
+
+  inherit (callPackage ../development/java-modules/maven/surefire-common.nix { inherit fetchMaven; })
+    mavenSurefireCommon_2_12_4;
+
+  inherit (callPackage ../development/java-modules/maven/toolchain.nix { inherit fetchMaven; })
+    mavenToolchain_1_0
+    mavenToolchain_2_0_9;
+
+  inherit (callPackage ../development/java-modules/plexus/build-api.nix { inherit fetchMaven; })
+    plexusBuildApi_0_0_4;
+
+  inherit (callPackage ../development/java-modules/plexus/compiler-api.nix { inherit fetchMaven; })
+    plexusCompilerApi_2_2;
 
   inherit (callPackage ../development/java-modules/plexus/component-annotations.nix { inherit fetchMaven; })
     plexusComponentAnnotations_1_5_5;
@@ -105,9 +174,14 @@ in {
   inherit (callPackage ../development/java-modules/plexus/interactivity-api.nix { inherit fetchMaven; })
     plexusInteractivityApi_1_0_alpha4;
 
+  inherit (callPackage ../development/java-modules/plexus/interpolation.nix { inherit fetchMaven; })
+    plexusInterpolation_1_13;
+
   inherit (callPackage ../development/java-modules/plexus/utils.nix { inherit fetchMaven; })
     plexusUtils_1_1
+    plexusUtils_1_5_1
     plexusUtils_1_5_8
+    plexusUtils_2_0_5
     plexusUtils_2_0_6
     plexusUtils_3_0;
 }