summary refs log tree commit diff
path: root/gnu/packages/java.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/java.scm')
-rw-r--r--gnu/packages/java.scm11
1 files changed, 10 insertions, 1 deletions
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 1b4cc4d3b0..f2f7078459 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -3871,11 +3871,20 @@ The jMock library
                               (find-files (assoc-ref inputs "java-junit") "\\.jar$")
                               (find-files (assoc-ref inputs "java-jmock") "\\.jar$")
                               (find-files (assoc-ref inputs "java-easymock") "\\.jar$")))
-                       ";")))
+                       ";"))
+                     (("build/hamcrest-core-\\$\\{version\\}\\.jar")
+                      (string-append (assoc-ref inputs "java-hamcrest-core")
+                                     "/share/java/hamcrest-core.jar")))
                    #t)))))))
     (inputs
      `(("java-junit" ,java-junit)
        ("java-jmock" ,java-jmock-1)
+       ;; This is necessary because of what seems to be a race condition.
+       ;; This package would sometimes fail to build because hamcrest-core.jar
+       ;; could not be found, even though it is built as part of this package.
+       ;; Adding java-hamcrest-core appears to fix this problem.  See
+       ;; https://debbugs.gnu.org/31390 for more information.
+       ("java-hamcrest-core" ,java-hamcrest-core)
        ("java-easymock" ,java-easymock)
        ,@(package-inputs java-hamcrest-core)))))