diff options
author | Tobias Geerinckx-Rice <me@tobias.gr> | 2021-06-23 18:45:21 +0200 |
---|---|---|
committer | Tobias Geerinckx-Rice <me@tobias.gr> | 2021-06-23 18:45:21 +0200 |
commit | 9dea3f101f252331c049c03f501398a5ec837ba9 (patch) | |
tree | 61d683a9fae3e147332d07fef207c1ddf51fc301 /gnu/packages/maven.scm | |
parent | 7f0af119a1e3ea9d0ae53811b619437b3e942702 (diff) | |
parent | 620669fd17306c2edb21c64a99fa47160fefb319 (diff) | |
download | guix-9dea3f101f252331c049c03f501398a5ec837ba9.tar.gz guix-9dea3f101f252331c049c03f501398a5ec837ba9.zip |
Merge branch 'master' into core-updates
Conflicts:
gnu/packages/cups.scm
gnu/packages/python-web.scm
gnu/packages/web.scm
guix/build/maven/pom.scm
Diffstat (limited to 'gnu/packages/maven.scm')
-rw-r--r-- | gnu/packages/maven.scm | 66 |
1 files changed, 46 insertions, 20 deletions
diff --git a/gnu/packages/maven.scm b/gnu/packages/maven.scm index c637e5c7ae..f7cb168f47 100644 --- a/gnu/packages/maven.scm +++ b/gnu/packages/maven.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2018 Julien Lepiller <julien@lepiller.eu> +;;; Copyright © 2018-2021 Julien Lepiller <julien@lepiller.eu> ;;; Copyright © 2019 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2019 Björn Höfling <bjoern.hoefling@bjoernhoefling.de> ;;; Copyright © 2020 Efraim Flashner <efraim@flashner.co.il> @@ -1541,7 +1541,9 @@ process.")))) (add-before 'build 'modify-metainf (lambda _ (substitute* "build.xml" - (("message=\"\"") "message=\"Implementation-Version: 3.5.4\n\"")) + (("message=\"\"") + (string-append "message=\"Implementation-Version: " + (package-version maven) "\n\""))) #t)) (add-before 'build 'add-maven-files (lambda _ @@ -1590,7 +1592,28 @@ artifactId=maven-core" ,(package-version maven-core-bootstrap)))) default-bindings-xml artifact-handlers-xml))))))) #t)) - (add-after 'generate-metadata 'rebuild + (add-after 'generate-metadata 'fix-plugin-versions + (lambda _ + ;; This file controls the default plugins used by Maven. Ensure + ;; we use the versions we have packaged by default + (substitute* '("build/classes/META-INF/plexus/default-bindings.xml" + "build/classes/META-INF/plexus/components.xml") + (("maven-install-plugin:[0-9.]+") + (string-append "maven-install-plugin:" + ,(package-version maven-install-plugin))) + (("maven-resources-plugin:[0-9.]+") + (string-append "maven-resources-plugin:" + ,(package-version maven-resources-plugin))) + (("maven-compiler-plugin:[0-9.]+") + (string-append "maven-compiler-plugin:" + ,(package-version maven-compiler-plugin))) + (("maven-surefire-plugin:[0-9.]+") + (string-append "maven-surefire-plugin:" + ,(package-version maven-surefire-plugin))) + (("maven-jar-plugin:[0-9.]+") + (string-append "maven-jar-plugin:" + ,(package-version maven-jar-plugin)))))) + (add-after 'fix-plugin-versions 'rebuild (lambda _ (invoke "ant" "jar") #t)))))) @@ -2690,6 +2713,15 @@ Maven project dependencies.") (modify-phases %standard-phases (delete 'configure) (delete 'build) + (add-before 'install 'fix-pom-versions + (lambda _ + (substitute* "pom.xml" + (("3.8.1") ,(package-version java-commons-lang3)) + (("1.4.1") ,(package-version maven-resolver-util)) + (("1.12") ,(package-version java-commons-codec)) + (("<version>2.2</version>") + ,(string-append "<version>" (package-version maven-dependency-tree) + "</version>"))))) (replace 'install (install-pom-file "pom.xml"))))) (propagated-inputs @@ -3424,23 +3456,17 @@ starting from JUnit 4."))) #:phases (modify-phases %standard-phases (add-before 'install 'regenerate-own-pom - (lambda _ - ;; Surefire struggles resolving artifacts because of this pom - ;; file, resulting in a NullPointerException when collecting - ;; Artifacts (and a "Failure detected." message from - ;; DefaultArtifactResolver). Replace the pom file with a much - ;; simpler one. Everything is shaded anyway (as used to be the - ;; case in 2.22), so there will not be missing dependencies. - (with-output-to-file "surefire-providers/surefire-junit4/pom.xml" - (lambda _ - (sxml->xml - `((project - (modelVersion "4.0.0") - (name "Surefire JUnit4") - (groupId "org.apache.maven.surefire") - (artifactId "surefire-junit4") - (version ,,(package-version java-surefire-common-java5))))))) - #t)) + ;; Surefire struggles resolving artifacts because of this pom + ;; file, resulting in a NullPointerException when collecting + ;; Artifacts (and a "Failure detected." message from + ;; DefaultArtifactResolver). Replace the pom file with a much + ;; simpler one. Everything is shaded anyway (as used to be the + ;; case in 2.22), so there will not be missing dependencies. + (generate-pom.xml + "surefire-providers/surefire-junit4/pom.xml" + "org.apache.maven.surefire" "surefire-junit4" + ,(package-version java-surefire-common-java5) + #:name "Surefire JUnit4")) (add-before 'build 'copy-resources (lambda _ (mkdir-p "build/classes") |