Welche Version von iText soll verwendet werden, damit sowohl JasperReports als auch Grails Rendering Plugin funktionieren?
Ich möchte beides benutzenJasper berichtet (Vanille, habe nie dieGrails Jasper-Plugin arbeiten - sehendiese) undGrails Rendering Plugin (Einer ist für einige Berichte besser geeignet, ein anderer für andere).
Wenn ich "com.lowagie: itext: 2.1.5" oder "com.lowagie: itext: 4.2.1" einbinde, fehlt "com.lowagie.text.pdf.BaseFont.getCharBBox" beim Ausführen des PDF-Berichts des Rendering-Plugins.
Wenn ich "com.lowagie: itext: 2.0.8" einbinde, fehlt "com.lowagie.text.pdf.PdfWriter.setRgbTransparencyBlending" beim Ausführen von Jaspers PDF-Bericht.
Beides schlägt mit java.lang.NoSuchMethodError-s fehl.
Ich habe es nicht mit den neuesten iText-Versionen versucht, aber sie haben unterschiedliche Paketnamen und eine restriktivere Lizenzierung. Ich denke nicht, dass sie gut passen würden.
Mein BuildConfig.groovy sieht so aus (eine der ersten 3 Abhängigkeiten wird nicht kommentiert):
dependencies {
// runtime 'com.lowagie:itext:4.2.1' // missing.BaseFont.getCharBBox
// runtime 'com.lowagie:itext:2.0.8' // missing PdfWriter.setRgbTransparencyBlending
// runtime 'com.lowagie:itext:2.1.5' // missing.BaseFont.getCharBBox
compile 'net.sf.jasperreports:jasperreports:5.2.0' // needed by jasper
runtime 'org.springframework:spring-test:3.2.4.RELEASE' // needed by rendering plugin
runtime 'commons-collections:commons-collections:3.2.1' // needed for jasper
}
plugins {
// ...
compile ":rendering:0.4.4"
// compile ":jasper:1.6.1" // couldn't get this to generate anything, but not sure it would help any
// ...
}
Gibt es eine "alte" Version von iText (MPL-lizenziert), die ich ausprobieren könnte, die möglicherweise funktioniert?
Gibt es eine Möglichkeit, Maven / Gradle zu bitten, es so zu machen, dass ich eine der Bibliotheken / Plugins bitten kann, eine Version von iText und eine andere Version von iText zu verwenden?