[bug#55979] gnu: Add java-commons-text
Commit Message
Hello Julien,
I've updated the patch according to your suggestions. Could you please
take a look?
Thanks!
- Artyom
Comments
Le Sat, 18 Jun 2022 19:25:29 +0300,
"Artyom V. Poptsov" <poptsov.artyom@gmail.com> a écrit :
> + (build-system ant-build-system)
> + (arguments
> + (list #:jar-name "java-commons-text.jar"
> + #:source-dir "src/main/java"
> + #:test-dir "src/test"
> + ;; XXX: Tests require JUnit5, namely
> 'org.junit.jupiter.api' module
> + ;; from JUnit5.
I think ;; tests require junit5
is enough here :)
> + #:tests? #f
> + #:phases #~(modify-phases %standard-phases
> + (replace 'install
> + (install-from-pom "pom.xml")))))
great :)
> + (inputs
> + (list java-commons-lang3
> + java-commons-io))
> + (propagated-inputs
> + (list apache-commons-parent-pom-52))
So this is an error, because apache-commons-parent-pom-52 is not the
parent of this package's pom file. Here's the content of the pom file
(btw you can view it easily with "guix build -S java-commons-text"):
<parent>
<groupId>org.apache.commons</groupId>
<artifactId>commons-parent</artifactId>
<version>51</version>
</parent>
so the parent is apache-commons-parent-pom-51 (note the version number).
Also in the list of dependencies from that file I see
java-commons-lang3, so it needs to be propagated, otherwise maven might
not be able to find it.
> + (home-page "https://commons.apache.org/text/")
> + (synopsis "Library focused on algorithms working on strings")
From aaafb87ce534f5ae337988f6b540704facfd11ee Mon Sep 17 00:00:00 2001
From: "Artyom V. Poptsov" <poptsov.artyom@gmail.com>
Date: Mon, 13 Jun 2022 06:54:25 +0300
Subject: [PATCH] gnu: Add java-commons-text
* gnu/packages/java.scm (java-commons-text): New variable.
---
gnu/packages/java.scm | 35 +++++++++++++++++++++++++++++++++++
1 file changed, 35 insertions(+)
@@ -7893,6 +7893,41 @@ Commons CLI supports different types of options:
@item long options with single hyphen (ie. ant -projecthelp)
@end itemize
+This is a part of the Apache Commons Project.")
+ (license license:asl2.0)))
+
+(define-public java-commons-text
+ (package
+ (name "java-commons-text")
+ (version "1.9")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "mirror://apache/commons/text/source/"
+ "commons-text-" version "-src.tar.gz"))
+ (sha256
+ (base32
+ "1k99ib2dxlqxb5y94kpzf4ix8xgxz1j3n9kq3ddssqqcccsp5ik2"))))
+ (build-system ant-build-system)
+ (arguments
+ (list #:jar-name "java-commons-text.jar"
+ #:source-dir "src/main/java"
+ #:test-dir "src/test"
+ ;; XXX: Tests require JUnit5, namely 'org.junit.jupiter.api' module
+ ;; from JUnit5.
+ #:tests? #f
+ #:phases #~(modify-phases %standard-phases
+ (replace 'install
+ (install-from-pom "pom.xml")))))
+ (inputs
+ (list java-commons-lang3
+ java-commons-io))
+ (propagated-inputs
+ (list apache-commons-parent-pom-52))
+ (home-page "https://commons.apache.org/text/")
+ (synopsis "Library focused on algorithms working on strings")
+ (description "Apache Commons Text is a library focused on algorithms
+working on strings.
+
This is a part of the Apache Commons Project.")
(license license:asl2.0)))
--
2.25.1