Author: fanningpj
Date: Wed Oct  9 20:26:51 2024
New Revision: 1921221

URL: http://svn.apache.org/viewvc?rev=1921221&view=rev
Log:
revert batik change due to build issues

Modified:
    poi/trunk/poi-ooxml/build.gradle

Modified: poi/trunk/poi-ooxml/build.gradle
URL: 
http://svn.apache.org/viewvc/poi/trunk/poi-ooxml/build.gradle?rev=1921221&r1=1921220&r2=1921221&view=diff
==============================================================================
--- poi/trunk/poi-ooxml/build.gradle (original)
+++ poi/trunk/poi-ooxml/build.gradle Wed Oct  9 20:26:51 2024
@@ -89,10 +89,6 @@ dependencies {
         exclude group: 'xalan', module: 'xalan'
         exclude group: 'xml-apis', module: 'xml-apis'
     }
-    
renderImplementation("org.apache.xmlgraphics:batik-script:${batikVersion}") {
-        exclude group: 'xalan', module: 'xalan'
-        exclude group: 'xml-apis', module: 'xml-apis'
-    }
 
     rendersignImplementation "org.apache.pdfbox:pdfbox:${pdfboxVersion}"
     rendersignImplementation 
"de.rototor.pdfbox:graphics2d:${graphics2dVersion}"
@@ -109,10 +105,6 @@ dependencies {
         exclude group: 'xalan', module: 'xalan'
         exclude group: 'xml-apis', module: 'xml-apis'
     }
-    
rendersignImplementation("org.apache.xmlgraphics:batik-script:${batikVersion}") 
{
-        exclude group: 'xalan', module: 'xalan'
-        exclude group: 'xml-apis', module: 'xml-apis'
-    }
 
 
     if (!NO_SCRATCHPAD) {
@@ -134,19 +126,29 @@ dependencies {
     testImplementation 
"org.apache.logging.log4j:log4j-slf4j2-impl:${log4jVersion}"
     testImplementation 'org.slf4j:slf4j-simple:2.0.16'
 
+    broken("org.apache.xmlgraphics:batik-script:${batikVersion}"){
+        exclude group: 'xalan', module: 'xalan'
+        exclude group: 'xml-apis', module: 'xml-apis'
+    }
+
     javadocs project(':poi')
     javadocs project(':poi-scratchpad')
 }
 
 final String MODULE_NAME = 'org.apache.poi.ooxml'
+final Pattern MODULE_NOT_REGEX = ~'(poi[/\\\\][^/\\\\]+$|batik-script)'
 final Pattern MODULE_REGEX = ~'\\.jar$'
 final List MAIN_MODULE_PATH = sourceSets.main.runtimeClasspath.findAll{ 
it.path =~ MODULE_REGEX }.collect{ it.parent }.unique()
-final List TEST_MODULE_PATH = sourceSets.test.runtimeClasspath.findAll{ 
it.path =~ MODULE_REGEX }.collect{ it.parent }.unique()
+final List TEST_MODULE_PATH = sourceSets.test.runtimeClasspath.findAll{ 
it.path =~ MODULE_REGEX && !(it.path =~ MODULE_NOT_REGEX) }.collect{ it.parent 
}.unique() + files("build/brokenJars")
 
 final String OOXML_LITE_AGENT = 
"../build/dist/maven/poi-ooxml-lite-agent/poi-ooxml-lite-agent-${project.version}.jar"
 final String OOXML_LITE_REPORT = '../src/resources/ooxml-lite-report'
 final String OOXML_LITE_INCLUDES = 
"^(com/microsoft/schemas|org/(etsi|openxmlformats|w3/)|org/apache/poi/schemas)"
 
+compileJava {
+    dependsOn 'fixBatik', 'cleanupBatik'
+}
+
 task compileJava9(type: JavaCompile) {
     dependsOn 'compileJava', ':poi:jar'
 
@@ -206,6 +208,25 @@ task testJar(type: Jar, dependsOn: testC
     }
 }
 
+// based on https://github.com/moditect/moditect-gradle-plugin/issues/12
+task fixBatik(type: Zip) {
+    ant.mkdir(dir: "${buildDir}/brokenJars")
+    archiveFileName = "batik-script-${batikVersion}.jar"
+    destinationDirectory = file("${buildDir}/brokenJars")
+    from zipTree(configurations.broken.files.find{ f -> 
f.name.startsWith("batik-script") })
+    filesMatching("**/org.apache.batik.script.InterpreterFactory") {
+        it.filter{ it2 -> it2.contains("Rhino") ? "#" + it2 : it2 }
+    }
+}
+
+task cleanupBatik(type: Delete) {
+    // remove older files to avoid build failures because of duplicate modules
+    delete fileTree("${buildDir}/brokenJars/").matching {
+        include "*.jar"
+        exclude "batik*-${batikVersion}.jar"
+    }
+}
+
 javadoc {
     failOnError = true
     doFirst {



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to