From bf96acf7e5869fb5e6d05ef0ccfd13d4619002fa Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 9 May 2017 22:46:11 +0200 Subject: gnu: Add java-eclipse-text. * gnu/packages/java.scm (java-eclipse-text): New variable. --- gnu/packages/java.scm | 55 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm index 95ddc581e2..aebcbd6b47 100644 --- a/gnu/packages/java.scm +++ b/gnu/packages/java.scm @@ -2825,6 +2825,61 @@ module @code{org.eclipse.compare.core}.") @code{org.eclipse.core.commands}.") (license license:epl1.0))) +(define-public java-eclipse-text + (package + (name "java-eclipse-text") + (version "3.6.0") + (source (origin + (method url-fetch) + (uri (string-append "https://repo1.maven.org/maven2/" + "org/eclipse/platform/org.eclipse.text/" + version "/org.eclipse.text-" + version "-sources.jar")) + (sha256 + (base32 + "0scz70vzz5qs5caji9f5q01vkqnvip7dpri1q07l8wbbdcxn4cq1")))) + (build-system ant-build-system) + (arguments + `(#:tests? #f ; no tests included + #:jar-name "eclipse-text.jar" + #:phases + (modify-phases %standard-phases + ;; When creating a new category we must make sure that the new list + ;; matches List. By default it seems to be too generic + ;; (ArrayList), so we specialize it to ArrayList. + ;; Without this we get this error: + ;; + ;; [javac] .../src/org/eclipse/jface/text/AbstractDocument.java:376: + ;; error: method put in interface Map cannot be applied to given types; + ;; [javac] fPositions.put(category, new ArrayList<>()); + ;; [javac] ^ + ;; [javac] required: String,List + ;; [javac] found: String,ArrayList + ;; [javac] reason: actual argument ArrayList cannot be converted + ;; to List by method invocation conversion + ;; [javac] where K,V are type-variables: + ;; [javac] K extends Object declared in interface Map + ;; [javac] V extends Object declared in interface Map + ;; + ;; I don't know if this is a good fix. I suspect it is not, but it + ;; seems to work. + (add-after 'unpack 'fix-compilation-error + (lambda _ + (substitute* "src/org/eclipse/jface/text/AbstractDocument.java" + (("Positions.put\\(category, new ArrayList<>\\(\\)\\);") + "Positions.put(category, new ArrayList());")) + #t))))) + (inputs + `(("java-eclipse-equinox-common" ,java-eclipse-equinox-common) + ("java-eclipse-core-commands" ,java-eclipse-core-commands) + ("java-icu4j" ,java-icu4j))) + (home-page "http://www.eclipse.org/platform") + (synopsis "Eclipse text library") + (description "Platform Text is part of the Platform UI project and +provides the basic building blocks for text and text editors within Eclipse +and contributes the Eclipse default text editor.") + (license license:epl1.0))) + (define-public java-commons-cli (package (name "java-commons-cli") -- cgit v1.2.3