diff options
author | Andreas Beeker <kiwiwings@apache.org> | 2021-09-12 20:31:43 +0000 |
---|---|---|
committer | Andreas Beeker <kiwiwings@apache.org> | 2021-09-12 20:31:43 +0000 |
commit | 596db3117021cea11793fff2d3018e5e2907a2c9 (patch) | |
tree | 2af7961416ce3c30cc037de1a62c7b58783faae4 | |
parent | 99047b5245ea588419cd45b8a8ac3a1ca15494ea (diff) | |
download | poi-596db3117021cea11793fff2d3018e5e2907a2c9.tar.gz poi-596db3117021cea11793fff2d3018e5e2907a2c9.zip |
XmlSec/BouncyCastle and Batik are now optional
disable SonarQube build based on ant
remove sonar and maven directory, because POMs are now created via Gradle
remove maven section from seed-build
fix duplicated maven dependencies on POM export
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1893289 13f79535-47bb-0310-9956-ffa450edef68
34 files changed, 187 insertions, 1867 deletions
diff --git a/build.gradle b/build.gradle index 8393a48950..7e59616989 100644 --- a/build.gradle +++ b/build.gradle @@ -15,6 +15,13 @@ limitations under the License. ==================================================================== */ +import org.w3c.dom.Node +import org.w3c.dom.NodeList + +import javax.xml.xpath.XPath +import javax.xml.xpath.XPathConstants +import javax.xml.xpath.XPathFactory + buildscript { repositories { maven { url 'https://plugins.gradle.org/m2/' } @@ -124,6 +131,15 @@ subprojects { NO_SCRATCHPAD = (findProperty("scratchpad.ignore") == "true") } + configurations { + all { + resolutionStrategy { + force "commons-io:commons-io:${commonsIoVersion}" + force 'org.slf4j:slf4j-api:1.8.0-beta4' + } + } + } + tasks.withType(JavaCompile) { options.encoding = 'UTF-8' options.compilerArgs << '-Xlint:unchecked' @@ -191,8 +207,23 @@ subprojects { } jar { + from("../legal") { + include "NOTICE" + include "LICENSE" + } + + rename('^(NOTICE|LICENSE)', 'META-INF/$1') + manifest { - attributes 'Implementation-Title': 'Apache POI', 'Implementation-Version': project.version + attributes( + 'Specification-Title': 'Apache POI', + 'Specification-Version': project.version, + 'Specification-Vendor': 'The Apache Software Foundation', + 'Implementation-Title': 'Apache POI', + 'Implementation-Version': project.version, + 'Implementation-Vendor': 'org.apache.poi', + 'Implementation-Vendor-Id': 'The Apache Software Foundation' + ) } } @@ -384,6 +415,20 @@ subprojects { // adding ASF header before root node is ignored // doc.insertBefore(asl, doc.getDocumentElement()) r.insertBefore(asl, r.getFirstChild()) + + // Replace ooxml-full with ooxml-lite + XPath xpath = XPathFactory.newInstance().newXPath() + NodeList res = (NodeList)xpath.evaluate("//dependency/artifactId[text() = 'poi-ooxml-full']", doc, XPathConstants.NODESET) + for (int i=res.getLength()-1; i>=0; i--) { + res.item(i).setTextContent('poi-ooxml-lite') + } + + // remove duplicate entries + res = (NodeList)xpath.evaluate("//dependency[artifactId = ./preceding-sibling::dependency/artifactId]", doc, XPathConstants.NODESET) + for (int i=res.getLength()-1; i>=0; i--) { + Node n = res.item(i) + n.getParentNode().removeChild(n) + } } } } @@ -392,9 +437,14 @@ subprojects { generatePomFileForPOIPublication.destination = "../build/dist/maven/${project.archivesBaseName}/${project.archivesBaseName}-${project.version}.pom" + tasks.withType(GenerateModuleMetadata) { + enabled = false + } + signing { sign publishing.publications.POI } + signPOIPublication.dependsOn('generatePomFileForPOIPublication') spotbugs { ignoreFailures = true @@ -402,9 +452,9 @@ subprojects { } build { - // disabled until next release build - only works when you've configured the signing key in your - // user gradle.properties file - // dependsOn 'signPOIPublication' + if (project.hasProperty('signing.keyId')) { + dependsOn 'signPOIPublication' + } } } @@ -525,8 +575,8 @@ task replaceVersion() { var version = subprojects[0].version var tokens = [ - [ 'sonar', '**/pom.xml', '(packaging>\\n\\s*<version>)[0-9.]+(?:-SNAPSHOT)?', "\\1${version}" ], - [ 'sonar', '**/pom.xml', '(poi-parent</artifactId>\\n\\s*<version>)[0-9.]+(?:-SNAPSHOT)?', "\1${version}" ], +// [ 'sonar', '**/pom.xml', '(packaging>\\n\\s*<version>)[0-9.]+(?:-SNAPSHOT)?', "\\1${version}" ], +// [ 'sonar', '**/pom.xml', '(poi-parent</artifactId>\\n\\s*<version>)[0-9.]+(?:-SNAPSHOT)?', "\1${version}" ], [ 'osgi', 'pom.xml', '(packaging>\\n\\s*<version>)[0-9.]+(?:-SNAPSHOT)?', "\\1${version}" ] // [ '.', 'build.gradle', ' version = \'[0-9.]+(?:-SNAPSHOT)?\'', " version = '${version}'" ] ] @@ -582,7 +632,7 @@ distributions { duplicatesStrategy = DuplicatesStrategy.EXCLUDE eachFile { - var root = "poi-bin-${version}/" + String root = "poi-bin-${version}/" if (name.startsWith('poi')) { path = root + name } else if (poiDep.contains(file)) { diff --git a/jenkins/create_jobs.groovy b/jenkins/create_jobs.groovy index b8f490e272..3099e250c0 100644 --- a/jenkins/create_jobs.groovy +++ b/jenkins/create_jobs.groovy @@ -65,11 +65,11 @@ def poijobs = [ ], [ name: 'POI-DSL-no-scratchpad', trigger: triggerSundays, noScratchpad: true, gradle: true ], - [ name: 'POI-DSL-SonarQube', jdk: '1.11', trigger: 'H 7 * * *', maven: true, sonar: true, skipcigame: true, - email: 'kiwiwings@apache.org', - // replaced by Gradle-based build now - disabled: true - ], +// [ name: 'POI-DSL-SonarQube', jdk: '1.11', trigger: 'H 7 * * *', maven: true, sonar: true, skipcigame: true, +// email: 'kiwiwings@apache.org', +// // replaced by Gradle-based build now +// disabled: true +// ], [ name: 'POI-DSL-SonarQube-Gradle', jdk: '1.11', trigger: 'H 7 * * *', gradle: true, sonar: true, skipcigame: true ], [ name: 'POI-DSL-Windows-1.8', trigger: 'H */12 * * *', windows: true, slaves: 'Windows', gradle: true @@ -339,46 +339,7 @@ poijobs.each { poijob -> def shellcmds = (poijob.windows ? shellCmdsWin : shellCmdsUnix).replace('POIJOBSHELL', poijob.shell ?: '') // Create steps and publishers depending on the type of Job that is selected - if(poijob.maven) { - steps { - shellEx(delegate, shellcmds, poijob) - maven { - goals('clean') - rootPOM('sonar/pom.xml') - localRepository(LocalRepositoryLocation.LOCAL_TO_WORKSPACE) - mavenInstallation(defaultMaven) - } - maven { - if (poijob.sonar) { - goals('clean package sonar:sonar') - property('sonar.login', '${POI_SONAR_TOKEN}') - } else { - goals('package') - } - rootPOM('sonar/pom.xml') - mavenOpts('-Xmx2g') - mavenOpts('-Xms256m') - mavenOpts('-XX:-OmitStackTraceInFastThrow') - localRepository(LocalRepositoryLocation.LOCAL_TO_WORKSPACE) - mavenInstallation(defaultMaven) - } - } - publishers { - if (!poijob.skipcigame) { - configure { project -> - project / publishers << 'hudson.plugins.cigame.GamePublisher' {} - } - } - if (!poijob.sonar) { - archiveJunit('sonar/*/target/surefire-reports/TEST-*.xml') { - testDataPublishers { - publishTestStabilityData() - } - } - } - mailer(email, false, false) - } - } else if (poijob.javadoc) { + if (poijob.javadoc) { steps { shellEx(delegate, shellcmds, poijob) ant { diff --git a/maven/poi-examples.pom b/maven/poi-examples.pom deleted file mode 100644 index 70bb701037..0000000000 --- a/maven/poi-examples.pom +++ /dev/null @@ -1,78 +0,0 @@ -<?xml version="1.0"?> -<!-- - - Licensed to the Apache Software Foundation (ASF) under one or more - contributor license agreements. See the NOTICE file distributed with - this work for additional information regarding copyright ownership. - The ASF licenses this file to You under the Apache License, Version 2.0 - (the "License"); you may not use this file except in compliance with - the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - ---> - -<project xmlns="http://maven.apache.org/POM/4.0.0" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> - - <modelVersion>4.0.0</modelVersion> - <groupId>org.apache.poi</groupId> - <artifactId>poi-examples</artifactId> - <version>@VERSION@</version> - <packaging>jar</packaging> - <name>Apache POI</name> - <url>https://poi.apache.org/</url> - <description>Apache POI Examples</description> - - <mailingLists> - <mailingList> - <name>POI Users List</name> - <subscribe>user-subscribe@poi.apache.org</subscribe> - <unsubscribe>user-unsubscribe@poi.apache.org</unsubscribe> - <archive>http://mail-archives.apache.org/mod_mbox/poi-user/</archive> - </mailingList> - <mailingList> - <name>POI Developer List</name> - <subscribe>dev-subscribe@poi.apache.org</subscribe> - <unsubscribe>dev-unsubscribe@poi.apache.org</unsubscribe> - <archive>http://mail-archives.apache.org/mod_mbox/poi-dev/</archive> - </mailingList> - </mailingLists> - - <licenses> - <license> - <name>Apache License, Version 2.0</name> - <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url> - </license> - </licenses> - - <organization> - <name>Apache Software Foundation</name> - <url>http://www.apache.org/</url> - </organization> - - <dependencies> - <dependency> - <groupId>org.apache.poi</groupId> - <artifactId>poi</artifactId> - <version>@VERSION@</version> - </dependency> - <dependency> - <groupId>org.apache.poi</groupId> - <artifactId>poi-scratchpad</artifactId> - <version>@VERSION@</version> - </dependency> - <dependency> - <groupId>org.apache.poi</groupId> - <artifactId>poi-ooxml</artifactId> - <version>@VERSION@</version> - </dependency> - </dependencies> -</project> diff --git a/maven/poi-excelant.pom b/maven/poi-excelant.pom deleted file mode 100644 index 7fcb5b8978..0000000000 --- a/maven/poi-excelant.pom +++ /dev/null @@ -1,78 +0,0 @@ -<?xml version="1.0"?> -<!-- - - Licensed to the Apache Software Foundation (ASF) under one or more - contributor license agreements. See the NOTICE file distributed with - this work for additional information regarding copyright ownership. - The ASF licenses this file to You under the Apache License, Version 2.0 - (the "License"); you may not use this file except in compliance with - the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - ---> - -<project xmlns="http://maven.apache.org/POM/4.0.0" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> - - <modelVersion>4.0.0</modelVersion> - <groupId>org.apache.poi</groupId> - <artifactId>poi-excelant</artifactId> - <version>@VERSION@</version> - <packaging>jar</packaging> - <name>Apache POI</name> - <url>https://poi.apache.org/</url> - <description>Apache POI Excel Ant Tasks</description> - - <mailingLists> - <mailingList> - <name>POI Users List</name> - <subscribe>user-subscribe@poi.apache.org</subscribe> - <unsubscribe>user-unsubscribe@poi.apache.org</unsubscribe> - <archive>http://mail-archives.apache.org/mod_mbox/poi-user/</archive> - </mailingList> - <mailingList> - <name>POI Developer List</name> - <subscribe>dev-subscribe@poi.apache.org</subscribe> - <unsubscribe>dev-unsubscribe@poi.apache.org</unsubscribe> - <archive>http://mail-archives.apache.org/mod_mbox/poi-dev/</archive> - </mailingList> - </mailingLists> - - <licenses> - <license> - <name>Apache License, Version 2.0</name> - <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url> - </license> - </licenses> - - <organization> - <name>Apache Software Foundation</name> - <url>http://www.apache.org/</url> - </organization> - - <dependencies> - <dependency> - <groupId>org.apache.poi</groupId> - <artifactId>poi</artifactId> - <version>@VERSION@</version> - </dependency> - <dependency> - <groupId>org.apache.poi</groupId> - <artifactId>poi-ooxml</artifactId> - <version>@VERSION@</version> - </dependency> - <dependency> - <groupId>org.apache.ant</groupId> - <artifactId>ant</artifactId> - <version>1.10.9</version> - </dependency> - </dependencies> -</project> diff --git a/maven/poi-ooxml-full.pom b/maven/poi-ooxml-full.pom deleted file mode 100644 index e6795ea940..0000000000 --- a/maven/poi-ooxml-full.pom +++ /dev/null @@ -1,70 +0,0 @@ -<?xml version="1.0"?> -<!-- - - Licensed to the Apache Software Foundation (ASF) under one or more - contributor license agreements. See the NOTICE file distributed with - this work for additional information regarding copyright ownership. - The ASF licenses this file to You under the Apache License, Version 2.0 - (the "License"); you may not use this file except in compliance with - the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - ---> - -<project xmlns="http://maven.apache.org/POM/4.0.0" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> - - <modelVersion>4.0.0</modelVersion> - <groupId>org.apache.poi</groupId> - <artifactId>poi-ooxml-full</artifactId> - <version>@VERSION@</version> - <packaging>jar</packaging> - <name>Apache POI - OOXML schemas (full)</name> - <description>XmlBeans generated from the Ecma supplied xsds (since POI 5.0.0, the 5th edition is used): - https://www.ecma-international.org/publications/standards/Ecma-376.htm</description> - <url>https://poi.apache.org/</url> - - <mailingLists> - <mailingList> - <name>POI Users List</name> - <subscribe>user-subscribe@poi.apache.org</subscribe> - <unsubscribe>user-unsubscribe@poi.apache.org</unsubscribe> - <archive>http://mail-archives.apache.org/mod_mbox/poi-user/</archive> - </mailingList> - <mailingList> - <name>POI Developer List</name> - <subscribe>dev-subscribe@poi.apache.org</subscribe> - <unsubscribe>dev-unsubscribe@poi.apache.org</unsubscribe> - <archive>http://mail-archives.apache.org/mod_mbox/poi-dev/</archive> - </mailingList> - </mailingLists> - - <licenses> - <license> - <name>Apache License, Version 2.0</name> - <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url> - <distribution>repo</distribution> - </license> - </licenses> - - <organization> - <name>Apache Software Foundation</name> - <url>http://www.apache.org/</url> - </organization> - - <dependencies> - <dependency> - <groupId>org.apache.xmlbeans</groupId> - <artifactId>xmlbeans</artifactId> - <version>5.0.1</version> - </dependency> - </dependencies> -</project> diff --git a/maven/poi-ooxml-lite.pom b/maven/poi-ooxml-lite.pom deleted file mode 100644 index 2d09069b9b..0000000000 --- a/maven/poi-ooxml-lite.pom +++ /dev/null @@ -1,76 +0,0 @@ -<?xml version="1.0"?> -<!-- - - Licensed to the Apache Software Foundation (ASF) under one or more - contributor license agreements. See the NOTICE file distributed with - this work for additional information regarding copyright ownership. - The ASF licenses this file to You under the Apache License, Version 2.0 - (the "License"); you may not use this file except in compliance with - the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - ---> - -<project xmlns="http://maven.apache.org/POM/4.0.0" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> - - <modelVersion>4.0.0</modelVersion> - <groupId>org.apache.poi</groupId> - <artifactId>poi-ooxml-lite</artifactId> - <version>@VERSION@</version> - <packaging>jar</packaging> - <name>Apache POI - OOXML Schemas (lite)</name> - <url>https://poi.apache.org/</url> - <description>Apache POI - Java API To Access Microsoft Format Files</description> - - <repositories> - <repository> - <id>apache-releases-repo</id> - <name>apache releases repo</name> - <url>https://repository.apache.org/content/repositories/releases</url> - </repository> - </repositories> - - <mailingLists> - <mailingList> - <name>POI Users List</name> - <subscribe>user-subscribe@poi.apache.org</subscribe> - <unsubscribe>user-unsubscribe@poi.apache.org</unsubscribe> - <archive>http://mail-archives.apache.org/mod_mbox/poi-user/</archive> - </mailingList> - <mailingList> - <name>POI Developer List</name> - <subscribe>dev-subscribe@poi.apache.org</subscribe> - <unsubscribe>dev-unsubscribe@poi.apache.org</unsubscribe> - <archive>http://mail-archives.apache.org/mod_mbox/poi-dev/</archive> - </mailingList> - </mailingLists> - - <licenses> - <license> - <name>Apache License, Version 2.0</name> - <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url> - </license> - </licenses> - - <organization> - <name>Apache Software Foundation</name> - <url>http://www.apache.org/</url> - </organization> - - <dependencies> - <dependency> - <groupId>org.apache.xmlbeans</groupId> - <artifactId>xmlbeans</artifactId> - <version>5.0.1</version> - </dependency> - </dependencies> -</project> diff --git a/maven/poi-ooxml.pom b/maven/poi-ooxml.pom deleted file mode 100644 index 769f7578aa..0000000000 --- a/maven/poi-ooxml.pom +++ /dev/null @@ -1,137 +0,0 @@ -<?xml version="1.0"?><!-- - - Licensed to the Apache Software Foundation (ASF) under one or more - contributor license agreements. See the NOTICE file distributed with - this work for additional information regarding copyright ownership. - The ASF licenses this file to You under the Apache License, Version 2.0 - (the "License"); you may not use this file except in compliance with - the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - ---> - -<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> - - <modelVersion>4.0.0</modelVersion> - <groupId>org.apache.poi</groupId> - <artifactId>poi-ooxml</artifactId> - <version>@VERSION@</version> - <packaging>jar</packaging> - <name>Apache POI - API based on OPC and OOXML schemas</name> - <url>https://poi.apache.org/</url> - <description>Apache POI - Java API To Access Microsoft Format Files</description> - - <mailingLists> - <mailingList> - <name>POI Users List</name> - <subscribe>user-subscribe@poi.apache.org</subscribe> - <unsubscribe>user-unsubscribe@poi.apache.org</unsubscribe> - <archive>http://mail-archives.apache.org/mod_mbox/poi-user/</archive> - </mailingList> - <mailingList> - <name>POI Developer List</name> - <subscribe>dev-subscribe@poi.apache.org</subscribe> - <unsubscribe>dev-unsubscribe@poi.apache.org</unsubscribe> - <archive>http://mail-archives.apache.org/mod_mbox/poi-dev/</archive> - </mailingList> - </mailingLists> - - <licenses> - <license> - <name>Apache License, Version 2.0</name> - <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url> - </license> - </licenses> - - <organization> - <name>Apache Software Foundation</name> - <url>http://www.apache.org/</url> - </organization> - - <dependencies> - <dependency> - <groupId>org.apache.poi</groupId> - <artifactId>poi</artifactId> - <version>@VERSION@</version> - </dependency> - <dependency> - <groupId>org.apache.poi</groupId> - <artifactId>poi-ooxml-lite</artifactId> - <version>@VERSION@</version> - </dependency> - <dependency> - <groupId>org.apache.commons</groupId> - <artifactId>commons-compress</artifactId> - <version>1.21</version> - </dependency> - <dependency> - <groupId>commons-io</groupId> - <artifactId>commons-io</artifactId> - <version>2.11.0</version> - </dependency> - <dependency> - <groupId>com.github.virtuald</groupId> - <artifactId>curvesapi</artifactId> - <version>1.06</version> - </dependency> - <dependency> - <groupId>org.bouncycastle</groupId> - <artifactId>bcpkix-jdk15on</artifactId> - <version>1.69</version> - </dependency> - <dependency> - <groupId>org.bouncycastle</groupId> - <artifactId>bcprov-jdk15on</artifactId> - <version>1.69</version> - </dependency> - <dependency> - <groupId>org.bouncycastle</groupId> - <artifactId>bcutil-jdk15on</artifactId> - <version>1.69</version> - </dependency> - <dependency> - <groupId>org.apache.santuario</groupId> - <artifactId>xmlsec</artifactId> - <version>2.2.2</version> - </dependency> - <dependency> - <groupId>org.apache.xmlgraphics</groupId> - <artifactId>batik-svggen</artifactId> - <version>1.14</version> - </dependency> - <dependency> - <groupId>org.apache.xmlgraphics</groupId> - <artifactId>batik-bridge</artifactId> - <version>1.14</version> - <exclusions> - <exclusion> - <groupId>org.apache.xmlgraphics</groupId> - <artifactId>batik-script</artifactId> - </exclusion> - </exclusions> - </dependency> - <dependency> - <groupId>org.apache.xmlgraphics</groupId> - <artifactId>batik-codec</artifactId> - <version>1.14</version> - </dependency> - <dependency> - <groupId>de.rototor.pdfbox</groupId> - <artifactId>graphics2d</artifactId> - <version>0.31</version> - <exclusions> - <exclusion> - <groupId>commons-logging</groupId> - <artifactId>commons-logging</artifactId> - </exclusion> - </exclusions> - </dependency> - </dependencies> -</project> diff --git a/maven/poi-scratchpad.pom b/maven/poi-scratchpad.pom deleted file mode 100644 index 0a155edf03..0000000000 --- a/maven/poi-scratchpad.pom +++ /dev/null @@ -1,68 +0,0 @@ -<?xml version="1.0"?> -<!-- - - Licensed to the Apache Software Foundation (ASF) under one or more - contributor license agreements. See the NOTICE file distributed with - this work for additional information regarding copyright ownership. - The ASF licenses this file to You under the Apache License, Version 2.0 - (the "License"); you may not use this file except in compliance with - the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - ---> - -<project xmlns="http://maven.apache.org/POM/4.0.0" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> - - <modelVersion>4.0.0</modelVersion> - <groupId>org.apache.poi</groupId> - <artifactId>poi-scratchpad</artifactId> - <version>@VERSION@</version> - <packaging>jar</packaging> - <name>Apache POI</name> - <url>https://poi.apache.org/</url> - <description>Apache POI - Java API To Access Microsoft Format Files</description> - - <mailingLists> - <mailingList> - <name>POI Users List</name> - <subscribe>user-subscribe@poi.apache.org</subscribe> - <unsubscribe>user-unsubscribe@poi.apache.org</unsubscribe> - <archive>http://mail-archives.apache.org/mod_mbox/poi-user/</archive> - </mailingList> - <mailingList> - <name>POI Developer List</name> - <subscribe>dev-subscribe@poi.apache.org</subscribe> - <unsubscribe>dev-unsubscribe@poi.apache.org</unsubscribe> - <archive>http://mail-archives.apache.org/mod_mbox/poi-dev/</archive> - </mailingList> - </mailingLists> - - <licenses> - <license> - <name>Apache License, Version 2.0</name> - <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url> - </license> - </licenses> - - <organization> - <name>Apache Software Foundation</name> - <url>http://www.apache.org/</url> - </organization> - - <dependencies> - <dependency> - <groupId>org.apache.poi</groupId> - <artifactId>poi</artifactId> - <version>@VERSION@</version> - </dependency> - </dependencies> -</project> diff --git a/maven/poi.pom b/maven/poi.pom deleted file mode 100644 index 44a32abea9..0000000000 --- a/maven/poi.pom +++ /dev/null @@ -1,91 +0,0 @@ -<?xml version="1.0"?><!-- - - Licensed to the Apache Software Foundation (ASF) under one or more - contributor license agreements. See the NOTICE file distributed with - this work for additional information regarding copyright ownership. - The ASF licenses this file to You under the Apache License, Version 2.0 - (the "License"); you may not use this file except in compliance with - the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - ---> - -<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> - - <modelVersion>4.0.0</modelVersion> - <groupId>org.apache.poi</groupId> - <artifactId>poi</artifactId> - <version>@VERSION@</version> - <packaging>jar</packaging> - <name>Apache POI</name> - <url>https://poi.apache.org/</url> - <description>Apache POI - Java API To Access Microsoft Format Files</description> - - <mailingLists> - <mailingList> - <name>POI Users List</name> - <subscribe>user-subscribe@poi.apache.org</subscribe> - <unsubscribe>user-unsubscribe@poi.apache.org</unsubscribe> - <archive>http://mail-archives.apache.org/mod_mbox/poi-user/</archive> - </mailingList> - <mailingList> - <name>POI Developer List</name> - <subscribe>dev-subscribe@poi.apache.org</subscribe> - <unsubscribe>dev-unsubscribe@poi.apache.org</unsubscribe> - <archive>http://mail-archives.apache.org/mod_mbox/poi-dev/</archive> - </mailingList> - </mailingLists> - - <licenses> - <license> - <name>Apache License, Version 2.0</name> - <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url> - </license> - </licenses> - - <organization> - <name>Apache Software Foundation</name> - <url>http://www.apache.org/</url> - </organization> - - <dependencies> - <dependency> - <groupId>org.apache.logging.log4j</groupId> - <artifactId>log4j-api</artifactId> - <version>2.14.0</version> - </dependency> - <dependency> - <groupId>commons-codec</groupId> - <artifactId>commons-codec</artifactId> - <version>1.15</version> - </dependency> - <dependency> - <groupId>org.apache.commons</groupId> - <artifactId>commons-collections4</artifactId> - <version>4.4</version> - </dependency> - <dependency> - <groupId>org.apache.commons</groupId> - <artifactId>commons-math3</artifactId> - <version>3.6.1</version> - </dependency> - <dependency> - <groupId>commons-io</groupId> - <artifactId>commons-io</artifactId> - <version>2.11.0</version> - </dependency> - <dependency> - <groupId>com.zaxxer</groupId> - <artifactId>SparseBitSet</artifactId> - <version>1.2</version> - </dependency> - </dependencies> - -</project> diff --git a/poi-examples/src/main/java9/module-info.class b/poi-examples/src/main/java9/module-info.class Binary files differindex 9b2245bc12..274689a12c 100644 --- a/poi-examples/src/main/java9/module-info.class +++ b/poi-examples/src/main/java9/module-info.class diff --git a/poi-excelant/build.gradle b/poi-excelant/build.gradle index cda39d2910..2876eb965c 100644 --- a/poi-excelant/build.gradle +++ b/poi-excelant/build.gradle @@ -46,7 +46,7 @@ dependencies { exclude group: 'org.apache.poi', module: 'poi-scratchpad' } testImplementation 'com.google.guava:guava:30.1.1-jre' - testImplementation "org.apache.logging.log4j:log4j-slf4j-impl:${log4jVersion}" + testImplementation "org.apache.logging.log4j:log4j-slf4j18-impl:${log4jVersion}" } final String MODULE_NAME = 'org.apache.poi.excelant' diff --git a/poi-integration/build.gradle b/poi-integration/build.gradle index cb491e01c0..7093336061 100644 --- a/poi-integration/build.gradle +++ b/poi-integration/build.gradle @@ -24,6 +24,7 @@ final boolean IBMVM = System.getProperty("java.vendor").contains("IBM") configurations { tests + misc } sourceSets { @@ -44,7 +45,10 @@ dependencies { testImplementation 'org.apache.commons:commons-collections4:4.4' testImplementation 'com.google.guava:guava:30.1.1-jre' - testImplementation(project(':poi-ooxml')) { + misc(project(':poi-ooxml')) { + capabilities { + requireCapability("${project.group}:poi-ooxml-rendersign") + } if (NO_SCRATCHPAD) { exclude group: 'org.apache.poi', module: 'poi-scratchpad' } @@ -73,14 +77,14 @@ dependencies { } } testImplementation project(path: ':poi-ooxml-lite-agent', configuration: 'archives') - testImplementation "org.apache.logging.log4j:log4j-slf4j-impl:${log4jVersion}" + testImplementation "org.apache.logging.log4j:log4j-slf4j18-impl:${log4jVersion}" } final String MODULE_NAME = 'org.apache.poi.stress' final Pattern MODULE_NOT_REGEX = ~'((poi|poi-scratchpad|poi-ooxml)[/\\\\][^/\\\\]+$|batik-script)' final Pattern MODULE_REGEX = ~'\\.jar$' -final List MODULE_COMPILE_PATH = sourceSets.test.compileClasspath.findAll{ it.path =~ MODULE_REGEX && !(it.path =~ MODULE_NOT_REGEX) }.collect{ it.parent }.unique() -final List MODULE_RUNTIME_PATH = sourceSets.test.runtimeClasspath.findAll{ it.path =~ MODULE_REGEX && !(it.path =~ MODULE_NOT_REGEX) }.collect{ it.parent }.unique() +final List MODULE_COMPILE_PATH = (sourceSets.test.compileClasspath + configurations.misc.files).findAll{ it.path =~ MODULE_REGEX && !(it.path =~ MODULE_NOT_REGEX) }.collect{ it.parent }.unique() +final List MODULE_RUNTIME_PATH = (sourceSets.test.runtimeClasspath + configurations.misc.files).findAll{ it.path =~ MODULE_REGEX && !(it.path =~ MODULE_NOT_REGEX) }.collect{ it.parent }.unique() final String OOXML_LITE_AGENT = "../build/dist/maven/poi-ooxml-lite-agent/poi-ooxml-lite-agent-${project.version}.jar" final String OOXML_LITE_REPORT = '../build/ooxml-lite-report' @@ -178,4 +182,4 @@ javadocJar.onlyIf { false } sourcesJar.onlyIf { false } -generateMetadataFileForPOIPublication.enabled = false
\ No newline at end of file +generateMetadataFileForPOIPublication.enabled = false diff --git a/poi-integration/src/test/java9/module-info.class b/poi-integration/src/test/java9/module-info.class Binary files differindex e5d258d7ee..91f8145f25 100644 --- a/poi-integration/src/test/java9/module-info.class +++ b/poi-integration/src/test/java9/module-info.class diff --git a/poi-integration/src/test/java9/module-info.java b/poi-integration/src/test/java9/module-info.java index 82eb9f6591..b5c8d064a0 100644 --- a/poi-integration/src/test/java9/module-info.java +++ b/poi-integration/src/test/java9/module-info.java @@ -24,7 +24,14 @@ module org.apache.poi.stress { requires org.apache.commons.collections4; requires org.apache.poi.examples; - requires static org.apache.poi.scratchpad; + requires org.apache.poi.scratchpad; + + requires org.apache.santuario.xmlsec; + requires org.bouncycastle.provider; + requires org.bouncycastle.pkix; + requires org.codehaus.stax2; + + exports org.apache.poi.stress; diff --git a/poi-ooxml/build.gradle b/poi-ooxml/build.gradle index 55ba4d6b25..f8ac5a93ae 100644 --- a/poi-ooxml/build.gradle +++ b/poi-ooxml/build.gradle @@ -18,12 +18,20 @@ import java.util.regex.Pattern configurations { - all { + runtimeClasspath { exclude group: 'xalan', module: 'xalan' if (JavaVersion.current() != JavaVersion.VERSION_1_8) { exclude group: 'xml-apis', module: 'xml-apis' } } + + compileClasspath { + exclude group: 'xalan', module: 'xalan' + if (JavaVersion.current() != JavaVersion.VERSION_1_8) { + exclude group: 'xml-apis', module: 'xml-apis' + } + } + broken tests javadocs @@ -42,27 +50,80 @@ sourceSets { } } +java { + registerFeature('signing') { + usingSourceSet(sourceSets.main) + } + registerFeature('render') { + usingSourceSet(sourceSets.main) + } + registerFeature('rendersign') { + usingSourceSet(sourceSets.main) + } +} + dependencies { api project(':poi') api project(':poi-ooxml-full') api project(path: ':poi-ooxml-full', configuration: 'archives') - - implementation 'org.apache.commons:commons-collections4:4.4' + api "org.apache.xmlbeans:xmlbeans:${xmlbeansVersion}" api "org.apache.commons:commons-compress:${commonsCompressVersion}" api "commons-io:commons-io:${commonsIoVersion}" - api 'org.apache.santuario:xmlsec:2.2.2' - api "org.bouncycastle:bcpkix-jdk15on:${bouncyCastleVersion}" - api "org.bouncycastle:bcutil-jdk15on:${bouncyCastleVersion}" api 'com.github.virtuald:curvesapi:1.06' - implementation "org.apache.logging.log4j:log4j-api:${log4jVersion}" + api "org.apache.logging.log4j:log4j-api:${log4jVersion}" + api 'org.apache.commons:commons-collections4:4.4' + + signingImplementation 'org.apache.santuario:xmlsec:2.2.2' + signingImplementation "org.bouncycastle:bcpkix-jdk15on:${bouncyCastleVersion}" + signingImplementation "org.bouncycastle:bcutil-jdk15on:${bouncyCastleVersion}" + + rendersignImplementation 'org.apache.santuario:xmlsec:2.2.2' + rendersignImplementation "org.bouncycastle:bcpkix-jdk15on:${bouncyCastleVersion}" + rendersignImplementation "org.bouncycastle:bcutil-jdk15on:${bouncyCastleVersion}" + + renderImplementation 'de.rototor.pdfbox:graphics2d:0.32' + renderImplementation "org.apache.xmlgraphics:batik-svggen:${batikVersion}" + renderImplementation("org.apache.xmlgraphics:batik-svgrasterizer:${batikVersion}") { + exclude group: 'xalan', module: 'xalan' + if (JavaVersion.current() != JavaVersion.VERSION_1_8) { + exclude group: 'xml-apis', module: 'xml-apis' + } + } + renderImplementation("org.apache.xmlgraphics:batik-codec:${batikVersion}") { + exclude group: 'xalan', module: 'xalan' + if (JavaVersion.current() != JavaVersion.VERSION_1_8) { + exclude group: 'xml-apis', module: 'xml-apis' + } + } + renderImplementation("org.apache.xmlgraphics:batik-bridge:${batikVersion}") { + exclude group: 'xalan', module: 'xalan' + if (JavaVersion.current() != JavaVersion.VERSION_1_8) { + exclude group: 'xml-apis', module: 'xml-apis' + } + } - implementation "org.apache.xmlgraphics:batik-svggen:${batikVersion}" - implementation "org.apache.xmlgraphics:batik-bridge:${batikVersion}" - implementation "org.apache.xmlgraphics:batik-codec:${batikVersion}" - implementation "org.apache.xmlgraphics:batik-svgrasterizer:${batikVersion}" + rendersignImplementation 'de.rototor.pdfbox:graphics2d:0.32' + rendersignImplementation "org.apache.xmlgraphics:batik-svggen:${batikVersion}" + rendersignImplementation("org.apache.xmlgraphics:batik-svgrasterizer:${batikVersion}") { + exclude group: 'xalan', module: 'xalan' + if (JavaVersion.current() != JavaVersion.VERSION_1_8) { + exclude group: 'xml-apis', module: 'xml-apis' + } + } + rendersignImplementation("org.apache.xmlgraphics:batik-codec:${batikVersion}") { + exclude group: 'xalan', module: 'xalan' + if (JavaVersion.current() != JavaVersion.VERSION_1_8) { + exclude group: 'xml-apis', module: 'xml-apis' + } + } + rendersignImplementation("org.apache.xmlgraphics:batik-bridge:${batikVersion}") { + exclude group: 'xalan', module: 'xalan' + if (JavaVersion.current() != JavaVersion.VERSION_1_8) { + exclude group: 'xml-apis', module: 'xml-apis' + } + } - api 'de.rototor.pdfbox:graphics2d:0.32' if (!NO_SCRATCHPAD) { testImplementation project(':poi-scratchpad') @@ -78,10 +139,15 @@ dependencies { // prevent slf4j warnings coming from xmlsec -> slf4j-api 1.7.32 dependency // see https://logging.apache.org/log4j/2.x/log4j-slf4j-impl/ - testImplementation "org.apache.logging.log4j:log4j-slf4j-impl:${log4jVersion}" + testImplementation "org.apache.logging.log4j:log4j-slf4j18-impl:${log4jVersion}" - broken "org.apache.xmlgraphics:batik-script:${batikVersion}" + broken("org.apache.xmlgraphics:batik-script:${batikVersion}"){ + exclude group: 'xalan', module: 'xalan' + if (JavaVersion.current() != JavaVersion.VERSION_1_8) { + exclude group: 'xml-apis', module: 'xml-apis' + } + } javadocs project(':poi') javadocs project(':poi-scratchpad') @@ -245,19 +311,13 @@ publishing { pom { name = 'Apache POI - API based on OPC and OOXML schemas' description = 'Apache POI - Java API To Access Microsoft Format Files' - - withXml { - // Update dependencies with resolved versions - def hasDependencies = !asNode().dependencies.isEmpty() - if (hasDependencies) { - asNode().dependencies.first().each { - String artifactId = it.get("artifactId").first().value().first() - String modifiedName = artifactId.equals("poi-ooxml-full") ? "poi-ooxml-lite" : artifactId - it.get("artifactId").first().value = modifiedName - } - } - } } + suppressPomMetadataWarningsFor('renderApiElements') + suppressPomMetadataWarningsFor('renderRuntimeElements') + suppressPomMetadataWarningsFor('signingApiElements') + suppressPomMetadataWarningsFor('signingRuntimeElements') + suppressPomMetadataWarningsFor('rendersignApiElements') + suppressPomMetadataWarningsFor('rendersignRuntimeElements') } } } diff --git a/poi-ooxml/src/main/java9/module-info.class b/poi-ooxml/src/main/java9/module-info.class Binary files differindex 6ca2bc5ba0..6e355946d8 100644 --- a/poi-ooxml/src/main/java9/module-info.class +++ b/poi-ooxml/src/main/java9/module-info.class diff --git a/poi-ooxml/src/main/java9/module-info.java b/poi-ooxml/src/main/java9/module-info.java index 151948597d..a81eba5604 100644 --- a/poi-ooxml/src/main/java9/module-info.java +++ b/poi-ooxml/src/main/java9/module-info.java @@ -86,9 +86,10 @@ module org.apache.poi.ooxml { /* optional dependencies for xml signatures - you need to add a require entry to your module-info * or add them via the --add-modules JVM argument */ requires java.xml.crypto; - requires org.apache.santuario.xmlsec; - requires org.bouncycastle.provider; - requires org.bouncycastle.pkix; + requires static org.apache.santuario.xmlsec; + requires static org.bouncycastle.provider; + requires static org.bouncycastle.pkix; + requires static org.codehaus.stax2; /* optional dependencies for slideshow rendering via PPTX2PNG */ requires static batik.anim; @@ -112,7 +113,7 @@ module org.apache.poi.ooxml { requires static batik.xml; requires static xmlgraphics.commons; - requires org.apache.pdfbox; - requires org.apache.fontbox; - requires de.rototor.pdfbox.graphics2d; + requires static org.apache.pdfbox; + requires static org.apache.fontbox; + requires static de.rototor.pdfbox.graphics2d; }
\ No newline at end of file diff --git a/poi-ooxml/src/test/java9/module-info.class b/poi-ooxml/src/test/java9/module-info.class Binary files differindex a6a4e2ae74..d5e072f647 100644 --- a/poi-ooxml/src/test/java9/module-info.class +++ b/poi-ooxml/src/test/java9/module-info.class diff --git a/poi-ooxml/src/test/java9/module-info.java b/poi-ooxml/src/test/java9/module-info.java index 152cab9e5c..4d7612ba00 100644 --- a/poi-ooxml/src/test/java9/module-info.java +++ b/poi-ooxml/src/test/java9/module-info.java @@ -84,9 +84,10 @@ module org.apache.poi.ooxml { /* optional dependencies for xml signatures - you need to add a require entry your module-info * or add them via the --add-modules JVM argument */ requires java.xml.crypto; - requires org.apache.santuario.xmlsec; - requires org.bouncycastle.provider; - requires org.bouncycastle.pkix; + requires static org.apache.santuario.xmlsec; + requires static org.bouncycastle.provider; + requires static org.bouncycastle.pkix; + requires static org.codehaus.stax2; /* optional dependencies for slideshow rendering via PPTX2PNG */ @@ -111,9 +112,9 @@ module org.apache.poi.ooxml { requires static batik.xml; requires static xmlgraphics.commons; - requires org.apache.pdfbox; - requires org.apache.fontbox; - requires de.rototor.pdfbox.graphics2d; + requires static org.apache.pdfbox; + requires static org.apache.fontbox; + requires static de.rototor.pdfbox.graphics2d; // test specific exports diff --git a/poi-scratchpad/build.gradle b/poi-scratchpad/build.gradle index 400884c8f5..078bb7e5bc 100644 --- a/poi-scratchpad/build.gradle +++ b/poi-scratchpad/build.gradle @@ -38,9 +38,9 @@ sourceSets { dependencies { api project(':poi') api project(path:':poi', configuration: 'archives') - implementation "commons-codec:commons-codec:${commonsCodecVersion}" - implementation "org.apache.commons:commons-math3:${commonsMathVersion}" - implementation "org.apache.logging.log4j:log4j-api:${log4jVersion}" + api "org.apache.logging.log4j:log4j-api:${log4jVersion}" + api "org.apache.commons:commons-math3:${commonsMathVersion}" + api "commons-codec:commons-codec:${commonsCodecVersion}" testImplementation project(path: ':poi', configuration: 'tests') testImplementation "org.junit.jupiter:junit-jupiter-api:${junitVersion}" diff --git a/poi-scratchpad/src/main/java9/module-info.class b/poi-scratchpad/src/main/java9/module-info.class Binary files differindex ffe0e5c1fc..53efc695f7 100644 --- a/poi-scratchpad/src/main/java9/module-info.class +++ b/poi-scratchpad/src/main/java9/module-info.class diff --git a/poi-scratchpad/src/main/java9/module-info.java b/poi-scratchpad/src/main/java9/module-info.java index 57070d405b..f2b2732ec5 100644 --- a/poi-scratchpad/src/main/java9/module-info.java +++ b/poi-scratchpad/src/main/java9/module-info.java @@ -20,6 +20,7 @@ module org.apache.poi.scratchpad { requires java.desktop; requires commons.math3; requires org.apache.commons.io; + requires org.apache.commons.codec; requires org.apache.logging.log4j; provides org.apache.poi.extractor.ExtractorProvider with org.apache.poi.extractor.ole2.OLE2ScratchpadExtractorFactory; diff --git a/poi/build.gradle b/poi/build.gradle index 889fb6d95b..d71e86bc51 100644 --- a/poi/build.gradle +++ b/poi/build.gradle @@ -41,8 +41,8 @@ dependencies { api "org.apache.commons:commons-math3:${commonsMathVersion}" api "commons-io:commons-io:${commonsIoVersion}" api 'com.zaxxer:SparseBitSet:1.2' - implementation "org.apache.logging.log4j:log4j-api:${log4jVersion}" - implementation 'javax.activation:activation:1.1.1' + api "org.apache.logging.log4j:log4j-api:${log4jVersion}" + // implementation 'javax.activation:activation:1.1.1' testImplementation 'org.reflections:reflections:0.9.12' testImplementation 'org.apache.ant:ant:1.10.11' diff --git a/poi/src/main/java9/module-info.class b/poi/src/main/java9/module-info.class Binary files differindex 26498b44bd..e9fb506529 100644 --- a/poi/src/main/java9/module-info.class +++ b/poi/src/main/java9/module-info.class diff --git a/poi/src/test/java9/module-info.class b/poi/src/test/java9/module-info.class Binary files differindex fabf8f27ed..fd6f5c8758 100644 --- a/poi/src/test/java9/module-info.class +++ b/poi/src/test/java9/module-info.class diff --git a/sonar/examples/pom.xml b/sonar/examples/pom.xml deleted file mode 100644 index 92777b4de2..0000000000 --- a/sonar/examples/pom.xml +++ /dev/null @@ -1,74 +0,0 @@ -<project xmlns="http://maven.apache.org/POM/4.0.0" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 - http://maven.apache.org/maven-v4_0_0.xsd"> - <modelVersion>4.0.0</modelVersion> - <parent> - <groupId>org.apache.poi</groupId> - <artifactId>poi-parent</artifactId> - <version>5.1.1-SNAPSHOT</version> - </parent> - <artifactId>poi-examples</artifactId> - <packaging>jar</packaging> - - <name>Apache POI Examples package</name> - - <properties> - <!-- There are no junit tests in the examples module --> - <maven.test.skip>true</maven.test.skip> - </properties> - - <build> - <plugins> - <!-- copy sources, resources and tests in place as otherwise Sonar does not pick them up correctly! --> - <plugin> - <artifactId>maven-resources-plugin</artifactId> - <version>${maven.plugin.resources.version}</version> - <executions> - <execution> - <id>copy-sources</id> - <!-- here the phase you need --> - <phase>generate-sources</phase> - <goals> - <goal>copy-resources</goal> - </goals> - <configuration> - <outputDirectory>${basedir}/src/main/java</outputDirectory> - <resources> - <resource> - <directory>../../poi-examples/src/main/java</directory> - </resource> - </resources> - </configuration> - </execution> - </executions> - </plugin> - <!-- clean copied sources afterwards --> - <plugin> - <artifactId>maven-clean-plugin</artifactId> - <version>${maven.plugin.clean.version}</version> - <configuration> - <filesets> - <fileset> - <directory>src</directory> - <followSymlinks>false</followSymlinks> - </fileset> - </filesets> - </configuration> - </plugin> - </plugins> - </build> - - <dependencies> - <dependency> - <groupId>${project.groupId}</groupId> - <artifactId>poi-main</artifactId> - <version>${project.version}</version> - </dependency> - <dependency> - <groupId>${project.groupId}</groupId> - <artifactId>poi-ooxml</artifactId> - <version>${project.version}</version> - </dependency> - </dependencies> -</project> diff --git a/sonar/excelant/pom.xml b/sonar/excelant/pom.xml deleted file mode 100644 index f54c92222e..0000000000 --- a/sonar/excelant/pom.xml +++ /dev/null @@ -1,117 +0,0 @@ -<project xmlns="http://maven.apache.org/POM/4.0.0" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 - http://maven.apache.org/maven-v4_0_0.xsd"> - <modelVersion>4.0.0</modelVersion> - <parent> - <groupId>org.apache.poi</groupId> - <artifactId>poi-parent</artifactId> - <version>5.1.1-SNAPSHOT</version> - </parent> - <artifactId>poi-excelant</artifactId> - <packaging>jar</packaging> - - <name>Apache POI ExcelAnt package</name> - - <build> - <plugins> - <!-- copy sources, resources and tests in place as otherwise Sonar does not pick them up correctly! --> - <plugin> - <artifactId>maven-resources-plugin</artifactId> - <version>${maven.plugin.resources.version}</version> - <executions> - <execution> - <id>copy-sources</id> - <!-- here the phase you need --> - <phase>generate-sources</phase> - <goals> - <goal>copy-resources</goal> - </goals> - <configuration> - <outputDirectory>${basedir}/src/main/java</outputDirectory> - <resources> - <resource> - <directory>../../poi-excelant/src/main/java</directory> - </resource> - </resources> - </configuration> - </execution> - <execution> - <id>copy-resources</id> - <!-- here the phase you need --> - <phase>generate-resources</phase> - <goals> - <goal>copy-resources</goal> - </goals> - <configuration> - <outputDirectory>${basedir}/src/main/resources</outputDirectory> - <resources> - <resource> - <directory>../../poi-excelant/src/main/resources</directory> - </resource> - <resource> - <directory>../../poi-excelant/src/test/resources</directory> - </resource> - </resources> - </configuration> - </execution> - <execution> - <id>copy-tests</id> - <!-- here the phase you need --> - <phase>generate-test-sources</phase> - <goals> - <goal>copy-resources</goal> - </goals> - <configuration> - <outputDirectory>${basedir}/src/test/java</outputDirectory> - <resources> - <resource> - <directory>../../poi-excelant/src/test/java</directory> - </resource> - </resources> - </configuration> - </execution> - </executions> - </plugin> - <!-- clean copied sources afterwards --> - <plugin> - <artifactId>maven-clean-plugin</artifactId> - <version>${maven.plugin.clean.version}</version> - <configuration> - <filesets> - <fileset> - <directory>src</directory> - <followSymlinks>false</followSymlinks> - </fileset> - </filesets> - </configuration> - </plugin> - </plugins> - </build> - - <dependencies> - <dependency> - <groupId>${project.groupId}</groupId> - <artifactId>poi-main</artifactId> - <version>${project.version}</version> - </dependency> - <dependency> - <groupId>${project.groupId}</groupId> - <artifactId>poi-main</artifactId> - <version>${project.version}</version> - <type>test-jar</type> - <scope>test</scope> - </dependency> - <dependency> - <groupId>${project.groupId}</groupId> - <artifactId>poi-ooxml</artifactId> - <version>${project.version}</version> - </dependency> - - <dependency> - <groupId>org.apache.ant</groupId> - <artifactId>ant</artifactId> - <version>1.10.9</version> - </dependency> - </dependencies> -</project> diff --git a/sonar/integration-test/pom.xml b/sonar/integration-test/pom.xml deleted file mode 100644 index 72990a0716..0000000000 --- a/sonar/integration-test/pom.xml +++ /dev/null @@ -1,126 +0,0 @@ -<project xmlns="http://maven.apache.org/POM/4.0.0" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 - http://maven.apache.org/maven-v4_0_0.xsd"> - <modelVersion>4.0.0</modelVersion> - <parent> - <groupId>org.apache.poi</groupId> - <artifactId>poi-parent</artifactId> - <version>5.1.1-SNAPSHOT</version> - - </parent> - <artifactId>integration-test</artifactId> - <packaging>jar</packaging> - - <name>Apache POI integration test</name> - - <build> - <plugins> - <!-- copy sources, resources and tests in place as otherwise Sonar does not pick them up correctly! --> - <plugin> - <artifactId>maven-resources-plugin</artifactId> - <version>${maven.plugin.resources.version}</version> - <executions> - <execution> - <id>copy-tests</id> - <phase>generate-test-sources</phase> - <goals> - <goal>copy-resources</goal> - </goals> - <configuration> - <outputDirectory>${basedir}/src/test/java</outputDirectory> - <resources> - <resource> - <directory>../../poi-integration/src/test/java</directory> - </resource> - <resource> - <directory>../../poi/src/test/java</directory> - <includes> - <include>org/apache/poi/POIDataSamples.java</include> - <include>org/apache/poi/util/NullPrintStream.java</include> - <include>org/apache/poi/util/NullOutputStream.java</include> - <include>org/apache/poi/hssf/HSSFTestDataSamples.java</include> - </includes> - </resource> - <resource> - <directory>../../poi-integration/src/test/resources</directory> - </resource> - </resources> - </configuration> - </execution> - </executions> - </plugin> - - <!-- clean copied sources afterwards --> - <plugin> - <artifactId>maven-clean-plugin</artifactId> - <version>${maven.plugin.clean.version}</version> - <configuration> - <filesets> - <fileset> - <directory>src</directory> - <followSymlinks>false</followSymlinks> - </fileset> - <fileset> - <directory>build</directory> - <followSymlinks>false</followSymlinks> - </fileset> - </filesets> - </configuration> - </plugin> - - - <!-- set jvm parameters for surefire plugin --> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-surefire-plugin</artifactId> - <version>${maven.plugin.surefire.version}</version> - <configuration> - <argLine>@{argLine} -Duser.language=en -Duser.country=US -Xmx1024m -Djava.io.tmpdir=${basedir}/target/tmp -XX:-OmitStackTraceInFastThrow</argLine> - <workingDirectory>../..</workingDirectory> - </configuration> - </plugin> - </plugins> - </build> - - <dependencies> - <dependency> - <groupId>${project.groupId}</groupId> - <artifactId>poi-ooxml</artifactId> - <version>${project.version}</version> - </dependency> - <dependency> - <groupId>${project.groupId}</groupId> - <artifactId>poi-scratchpad</artifactId> - <version>${project.version}</version> - </dependency> - <dependency> - <groupId>${project.groupId}</groupId> - <artifactId>poi-examples</artifactId> - <version>${project.version}</version> - </dependency> - - <dependency> - <groupId>org.reflections</groupId> - <artifactId>reflections</artifactId> - <version>0.9.12</version> - <scope>test</scope> - </dependency> - - <dependency> - <groupId>org.openjdk.jmh</groupId> - <artifactId>jmh-core</artifactId> - <version>1.27</version> - <scope>test</scope> - </dependency> - <dependency> - <groupId>org.apache.ant</groupId> - <artifactId>ant</artifactId> - <version>1.10.9</version> - <scope>test</scope> - </dependency> - - - - </dependencies> -</project> diff --git a/sonar/main/pom.xml b/sonar/main/pom.xml deleted file mode 100644 index 25cd9d88b0..0000000000 --- a/sonar/main/pom.xml +++ /dev/null @@ -1,143 +0,0 @@ -<project xmlns="http://maven.apache.org/POM/4.0.0" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 - http://maven.apache.org/maven-v4_0_0.xsd"> - <modelVersion>4.0.0</modelVersion> - <parent> - <groupId>org.apache.poi</groupId> - <artifactId>poi-parent</artifactId> - <version>5.1.1-SNAPSHOT</version> - </parent> - <artifactId>poi-main</artifactId> - <packaging>jar</packaging> - - <name>Apache POI Main package</name> - - <build> - <plugins> - <!-- copy sources, resources and tests in place as otherwise Sonar does not pick them up correctly! --> - <plugin> - <artifactId>maven-resources-plugin</artifactId> - <version>${maven.plugin.resources.version}</version> - <executions> - <execution> - <id>copy-sources</id> - <phase>generate-sources</phase> - <goals> - <goal>copy-resources</goal> - </goals> - <configuration> - <outputDirectory>${basedir}/src/main/java</outputDirectory> - <resources> - <resource> - <directory>../../poi/src/main/java</directory> - </resource> - </resources> - </configuration> - </execution> - <execution> - <id>copy-resources</id> - <phase>generate-resources</phase> - <goals> - <goal>copy-resources</goal> - </goals> - <configuration> - <outputDirectory>${basedir}/src/main/resources</outputDirectory> - <resources> - <resource> - <directory>../../poi/src/main/resources</directory> - </resource> - </resources> - </configuration> - </execution> - <execution> - <id>copy-tests</id> - <!-- here the phase you need --> - <phase>generate-test-sources</phase> - <goals> - <goal>copy-resources</goal> - </goals> - <configuration> - <outputDirectory>${basedir}/src/test/java</outputDirectory> - <resources> - <resource> - <directory>../../poi/src/test/java</directory> - </resource> - <resource> - <directory>../../poi/src/test/resources</directory> - </resource> - </resources> - </configuration> - </execution> - </executions> - </plugin> - - <!-- clean copied sources afterwards --> - <plugin> - <artifactId>maven-clean-plugin</artifactId> - <version>${maven.plugin.clean.version}</version> - <configuration> - <filesets> - <fileset> - <directory>src</directory> - <followSymlinks>false</followSymlinks> - </fileset> - </filesets> - </configuration> - </plugin> - - <!-- provide the test-jar for other modules --> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-jar-plugin</artifactId> - <version>${maven.plugin.jar.version}</version> - <executions> - <execution> - <goals> - <goal>test-jar</goal> - </goals> - </execution> - </executions> - </plugin> - </plugins> - </build> - - <dependencies> - <dependency> - <groupId>org.apache.logging.log4j</groupId> - <artifactId>log4j-api</artifactId> - <version>2.14.0</version> - </dependency> - <dependency> - <groupId>commons-codec</groupId> - <artifactId>commons-codec</artifactId> - <version>1.15</version> - </dependency> - <dependency> - <groupId>org.apache.commons</groupId> - <artifactId>commons-collections4</artifactId> - <version>4.4</version> - </dependency> - <dependency> - <groupId>org.apache.commons</groupId> - <artifactId>commons-math3</artifactId> - <version>3.6.1</version> - </dependency> - <dependency> - <groupId>commons-io</groupId> - <artifactId>commons-io</artifactId> - <version>2.11.0</version> - </dependency> - <dependency> - <groupId>com.zaxxer</groupId> - <artifactId>SparseBitSet</artifactId> - <version>1.2</version> - </dependency> - <dependency> - <groupId>org.apache.ant</groupId> - <artifactId>ant</artifactId> - <version>1.10.9</version> - <scope>test</scope> - </dependency> - </dependencies> -</project> diff --git a/sonar/ooxml-full/pom.xml b/sonar/ooxml-full/pom.xml deleted file mode 100644 index a921cfd1c4..0000000000 --- a/sonar/ooxml-full/pom.xml +++ /dev/null @@ -1,151 +0,0 @@ -<project xmlns="http://maven.apache.org/POM/4.0.0" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 - http://maven.apache.org/maven-v4_0_0.xsd"> - <modelVersion>4.0.0</modelVersion> - <parent> - <groupId>org.apache.poi</groupId> - <artifactId>poi-parent</artifactId> - <version>5.1.1-SNAPSHOT</version> - <relativePath>..</relativePath> - </parent> - <artifactId>poi-ooxml-lite</artifactId> - <packaging>jar</packaging> - - <name>Apache POI - Openxmlformats Schema package</name> - - <properties> - <!-- see http://docs.codehaus.org/display/SONAR/Narrowing+the+Focus for details of this property --> - <sonar.exclusions>target/generated-sources/*</sonar.exclusions> - <maven.compiler.fork>true</maven.compiler.fork> - </properties> - - <build> - <plugins> - <plugin> - <artifactId>maven-antrun-plugin</artifactId> - <version>${maven.plugin.antrun.version}</version> - <executions> - <execution> - <id>copy-xmltype-and-xsdconfig</id> - <phase>generate-sources</phase> - <goals> - <goal>run</goal> - </goals> - <configuration> - <target> - <property name="xsdir" value="${basedir}/../../poi-ooxml-full/src/main/xmlschema/org/apache/poi"/> - <copy todir="${basedir}/target/schemas"> - <zipfileset src="${xsdir}/schemas/OfficeOpenXML-XMLSchema-Transitional.zip"/> - <zipfileset src="${xsdir}/schemas/OpenPackagingConventions-XMLSchema.zip" includes="opc-digSig.xsd,opc-relationships.xsd"/> - <fileset dir="${xsdir}/xdgf" includes="*.xsd,*.xsdconfig"/> - <fileset dir="${xsdir}/schemas" includes="*.xsd,*.xsdconfig"/> - <fileset dir="${xsdir}/poifs/crypt" includes="signatureInfo.xsd"/> - </copy> - </target> - </configuration> - </execution> - </executions> - </plugin> - - <plugin> - <groupId>org.codehaus.mojo</groupId> - <artifactId>exec-maven-plugin</artifactId> - <version>3.0.0</version> - <executions> - <execution> - <phase>process-sources</phase> - <goals> - <!-- need to use exec instead of java, because SchemaCompiler calls System.exit() --> - <goal>exec</goal> - </goals> - </execution> - </executions> - <configuration> - <executable>java</executable> - <arguments> - <argument>-classpath</argument> - <!-- automatically creates the classpath using all project dependencies, - also adding the project build directory --> - <classpath/> - <argument>org.apache.xmlbeans.impl.tool.SchemaCompiler</argument> - <argument>-srconly</argument> - <argument>-name</argument> - <argument>ooxml</argument> - <argument>-repackage</argument> - <argument>org.apache.xmlbeans.metadata:org.apache.poi.schemas.ooxml</argument> - <argument>-d</argument> - <argument>${basedir}/target/generated-resources</argument> - <argument>-src</argument> - <argument>${basedir}/target/generated-sources</argument> - <argument>${basedir}/target/schemas</argument> - </arguments> - </configuration> - </plugin> - - <plugin> - <groupId>org.codehaus.mojo</groupId> - <artifactId>build-helper-maven-plugin</artifactId> - <version>3.2.0</version> - <executions> - <execution> - <id>add-source</id> - <goals> - <goal>add-source</goal> - <goal>add-resource</goal> - </goals> - <configuration> - <resources> - <resource> - <directory>${basedir}/target/generated-resources</directory> - </resource> - <resource> - <directory>${basedir}/../../poi-ooxml-full/src/main/java9</directory> - <targetPath>META-INF/versions/9</targetPath> - <includes> - <include>*.class</include> - </includes> - </resource> - </resources> - <sources> - <source>${basedir}/target/generated-sources</source> - </sources> - </configuration> - </execution> - </executions> - </plugin> - - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-jar-plugin</artifactId> - <version>3.2.0</version> - <configuration> - <archive> - <manifestEntries> - <Multi-Release>true</Multi-Release> - <Automatic-Module-Name>org.apache.poi.ooxml.schemas</Automatic-Module-Name> - </manifestEntries> - </archive> - </configuration> - </plugin> - </plugins> - </build> - - <dependencies> - <dependency> - <groupId>${project.groupId}</groupId> - <artifactId>poi-main</artifactId> - <version>${project.version}</version> - </dependency> - <dependency> - <groupId>${project.groupId}</groupId> - <artifactId>poi-scratchpad</artifactId> - <version>${project.version}</version> - </dependency> - <dependency> - <groupId>org.apache.xmlbeans</groupId> - <artifactId>xmlbeans</artifactId> - <version>${xmlbeans.version}</version> - </dependency> - </dependencies> -</project> diff --git a/sonar/ooxml-full/xmlbeans.marker b/sonar/ooxml-full/xmlbeans.marker deleted file mode 100644 index 2744493ace..0000000000 --- a/sonar/ooxml-full/xmlbeans.marker +++ /dev/null @@ -1 +0,0 @@ -This purpose of this marker file is solely to activate the xmlbeans maven profile.
\ No newline at end of file diff --git a/sonar/ooxml/pom.xml b/sonar/ooxml/pom.xml deleted file mode 100644 index 04ec4dc38d..0000000000 --- a/sonar/ooxml/pom.xml +++ /dev/null @@ -1,216 +0,0 @@ -<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 - http://maven.apache.org/maven-v4_0_0.xsd"> - <modelVersion>4.0.0</modelVersion> - <parent> - <groupId>org.apache.poi</groupId> - <artifactId>poi-parent</artifactId> - <version>5.1.1-SNAPSHOT</version> - </parent> - <artifactId>poi-ooxml</artifactId> - <packaging>jar</packaging> - - <name>Apache POI OOXML package</name> - - <build> - <plugins> - <!-- copy sources, resources and tests in place as otherwise Sonar does not pick them up correctly! --> - <plugin> - <artifactId>maven-resources-plugin</artifactId> - <version>${maven.plugin.resources.version}</version> - <executions> - <execution> - <id>copy-sources</id> - <phase>generate-sources</phase> - <goals> - <goal>copy-resources</goal> - </goals> - <configuration> - <outputDirectory>${basedir}/src/main/java</outputDirectory> - <resources> - <resource> - <directory>../../poi-ooxml/src/main/java</directory> - </resource> - </resources> - </configuration> - </execution> - <execution> - <id>copy-resources</id> - <phase>generate-resources</phase> - <goals> - <goal>copy-resources</goal> - </goals> - <configuration> - <outputDirectory>${basedir}/src/main/resources</outputDirectory> - <resources> - <resource> - <directory>../../poi-ooxml/src/main/resources</directory> - </resource> - </resources> - </configuration> - </execution> - <execution> - <id>copy-tests</id> - <phase>generate-test-sources</phase> - <goals> - <goal>copy-resources</goal> - </goals> - <configuration> - <outputDirectory>${basedir}/src/test/java</outputDirectory> - <resources> - <resource> - <directory>../../poi-ooxml/src/test/java</directory> - </resource> - <resource> - <directory>../../poi-ooxml/src/test/resources</directory> - </resource> - </resources> - </configuration> - </execution> - </executions> - </plugin> - - <!-- clean copied sources afterwards --> - <plugin> - <artifactId>maven-clean-plugin</artifactId> - <version>${maven.plugin.clean.version}</version> - <configuration> - <filesets> - <fileset> - <directory>src</directory> - <followSymlinks>false</followSymlinks> - </fileset> - <fileset> - <directory>build</directory> - <followSymlinks>false</followSymlinks> - </fileset> - </filesets> - </configuration> - </plugin> - - <!-- set jvm parameters for surefire plugin --> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-surefire-plugin</artifactId> - <version>${maven.plugin.surefire.version}</version> - <configuration> - <argLine>@{argLine} -Duser.language=en -Duser.country=US -Xmx1024m - -Djava.io.tmpdir=${basedir}/target/tmp -XX:-OmitStackTraceInFastThrow - </argLine> - </configuration> - </plugin> - </plugins> - </build> - - <dependencies> - <dependency> - <groupId>${project.groupId}</groupId> - <artifactId>poi-ooxml-lite</artifactId> - <version>${project.version}</version> - </dependency> - <dependency> - <groupId>${project.groupId}</groupId> - <artifactId>poi-main</artifactId> - <version>${project.version}</version> - </dependency> - <dependency> - <groupId>${project.groupId}</groupId> - <artifactId>poi-main</artifactId> - <version>${project.version}</version> - <type>test-jar</type> - <scope>test</scope> - </dependency> - - <dependency> - <groupId>org.apache.xmlbeans</groupId> - <artifactId>xmlbeans</artifactId> - <version>${xmlbeans.version}</version> - </dependency> - - <dependency> - <groupId>org.bouncycastle</groupId> - <artifactId>bcpkix-jdk15on</artifactId> - <version>1.69</version> - </dependency> - <dependency> - <groupId>org.bouncycastle</groupId> - <artifactId>bcprov-jdk15on</artifactId> - <version>1.69</version> - </dependency> - <dependency> - <groupId>org.bouncycastle</groupId> - <artifactId>bcutil-jdk15on</artifactId> - <version>1.69</version> - </dependency> - <dependency> - <groupId>org.apache.santuario</groupId> - <artifactId>xmlsec</artifactId> - <version>2.2.2</version> - </dependency> - <dependency> - <groupId>org.apache.commons</groupId> - <artifactId>commons-compress</artifactId> - <version>1.21</version> - </dependency> - <dependency> - <groupId>commons-io</groupId> - <artifactId>commons-io</artifactId> - <version>2.11.0</version> - </dependency> - <dependency> - <groupId>com.github.virtuald</groupId> - <artifactId>curvesapi</artifactId> - <version>1.06</version> - </dependency> - <dependency> - <groupId>org.apache.xmlgraphics</groupId> - <artifactId>batik-svggen</artifactId> - <version>1.14</version> - </dependency> - <dependency> - <groupId>org.apache.xmlgraphics</groupId> - <artifactId>batik-bridge</artifactId> - <version>1.14</version> - <exclusions> - <exclusion> - <groupId>org.apache.xmlgraphics</groupId> - <artifactId>batik-script</artifactId> - </exclusion> - </exclusions> - </dependency> - <dependency> - <groupId>org.apache.xmlgraphics</groupId> - <artifactId>batik-codec</artifactId> - <version>1.14</version> - </dependency> - <dependency> - <groupId>de.rototor.pdfbox</groupId> - <artifactId>graphics2d</artifactId> - <version>0.32</version> - </dependency> - - <dependency> - <groupId>org.reflections</groupId> - <artifactId>reflections</artifactId> - <version>0.9.12</version> - <scope>test</scope> - </dependency> - <dependency> - <groupId>org.openjdk.jmh</groupId> - <artifactId>jmh-core</artifactId> - <version>1.27</version> - <scope>test</scope> - </dependency> - <dependency> - <groupId>org.openjdk.jmh</groupId> - <artifactId>jmh-generator-annprocess</artifactId> - <version>1.27</version> - <scope>test</scope> - </dependency> - <dependency> - <groupId>com.google.guava</groupId> - <artifactId>guava</artifactId> - <version>30.1-jre</version> - <scope>test</scope> - </dependency> - </dependencies> -</project> diff --git a/sonar/pom.xml b/sonar/pom.xml deleted file mode 100644 index ba2cf34251..0000000000 --- a/sonar/pom.xml +++ /dev/null @@ -1,227 +0,0 @@ -<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> - <modelVersion>4.0.0</modelVersion> - <groupId>org.apache.poi</groupId> - <artifactId>poi-parent</artifactId> - <packaging>pom</packaging> - <version>5.1.1-SNAPSHOT</version> - <name>Apache POI - the Java API for Microsoft Documents</name> - <description>Maven build of Apache POI for Sonar checks</description> - <url>https://poi.apache.org/</url> - - <mailingLists> - <mailingList> - <name>POI Users List</name> - <subscribe>user-subscribe@poi.apache.org</subscribe> - <unsubscribe>user-unsubscribe@poi.apache.org</unsubscribe> - <archive>http://mail-archives.apache.org/mod_mbox/poi-user/</archive> - </mailingList> - <mailingList> - <name>POI Developer List</name> - <subscribe>dev-subscribe@poi.apache.org</subscribe> - <unsubscribe>dev-unsubscribe@poi.apache.org</unsubscribe> - <archive>http://mail-archives.apache.org/mod_mbox/poi-dev/</archive> - </mailingList> - </mailingLists> - - <licenses> - <license> - <name>Apache License, Version 2.0</name> - <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url> - </license> - </licenses> - - <organization> - <name>Apache Software Foundation</name> - <url>http://www.apache.org/</url> - </organization> - - <issueManagement> - <system>Bugzilla</system> - <url>https://bz.apache.org/bugzilla/</url> - </issueManagement> - - <scm> - <connection>scm:svn:https://svn.apache.org/repos/asf/poi/trunk</connection> - <developerConnection>scm:svn:https://svn.apache.org/repos/asf/poi/trunk</developerConnection> - <url>https://svn.apache.org/viewvc/poi</url> - </scm> - - <repositories> - <repository> - <id>apache-releases-repo</id> - <name>apache releases repo</name> - <url>https://repository.apache.org/content/repositories/releases</url> - </repository> - </repositories> - - <modules> - <module>main</module> - <module>ooxml-full</module> - <module>ooxml</module> - <module>scratchpad</module> - <module>excelant</module> - <module>examples</module> - <module>integration-test</module> - </modules> - - <properties> - <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> - <!-- Try to disable running SVN blame as it causes errors here because the source is copied from the actual SVN location here! --> - <sonar.scm.disabled>true</sonar.scm.disabled> - - <sonar.organization>apache</sonar.organization> - <sonar.projectKey>poi-parent</sonar.projectKey> - <sonar.moduleKey>${project.artifactId}</sonar.moduleKey> - - <sonar.host.url>https://sonarcloud.io</sonar.host.url> - <!-- sonar.jacoco.reportPaths>target/jacoco.exec</sonar.jacoco.reportPaths --> - <sonar.coverage.jacoco.xmlReportPaths>target/site/jacoco/jacoco.xml</sonar.coverage.jacoco.xmlReportPaths> - - <!-- define some of the third-party or plugin-versions globally to use the same in all modules --> - <xmlbeans.version>5.0.1</xmlbeans.version> - <junit.version>5.7.1</junit.version> - <xmlunit.version>2.8.2</xmlunit.version> - <mockito.version>3.6.28</mockito.version> - <maven.plugin.resources.version>3.2.0</maven.plugin.resources.version> - <maven.plugin.jar.version>3.2.0</maven.plugin.jar.version> - <maven.plugin.clean.version>3.1.0</maven.plugin.clean.version> - <maven.plugin.download.version>1.6.0</maven.plugin.download.version> - <maven.plugin.antrun.version>3.0.0</maven.plugin.antrun.version> - <maven.plugin.surefire.version>3.0.0-M5</maven.plugin.surefire.version> - </properties> - - <build> - <pluginManagement> - <plugins> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-compiler-plugin</artifactId> - <version>3.8.1</version> - <configuration> - <source>1.8</source> - <target>1.8</target> - </configuration> - </plugin> - </plugins> - </pluginManagement> - <plugins> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-surefire-plugin</artifactId> - <version>${maven.plugin.surefire.version}</version> - <configuration> - <printSummary>false</printSummary> - <systemPropertyVariables> - <POI.testdata.path>${basedir}/../../test-data</POI.testdata.path> - <java.awt.headless>true</java.awt.headless> - </systemPropertyVariables> - <!-- use to following to analyze OOM issues: -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/tmp --> - <argLine>@{argLine} -Duser.language=en -Duser.country=US -Xmx1024m -Djava.io.tmpdir=${basedir}/target/tmp -XX:-OmitStackTraceInFastThrow</argLine> - <excludes> - <exclude>**/All*Tests.java</exclude> - <exclude>**/TestUnfixedBugs.java</exclude> - <exclude>**/TestcaseRecordInputStream.java</exclude> - <exclude>**/POITestCase.java</exclude> - <!-- TODO: error about no public construct, seems to run with JUnit 3.8... --> - <exclude>**/TestWordToConverterSuite*.java</exclude> - <exclude>**/TestExcelConverterSuite*.java</exclude> - </excludes> - <!--test>TestPPTX2PNG</test--> - <!--parallel>both</parallel> - <threadCount>10</threadCount--> - </configuration> - </plugin> - <plugin> - <groupId>org.jacoco</groupId> - <artifactId>jacoco-maven-plugin</artifactId> - <version>0.8.6</version> - <executions> - <execution> - <goals> - <goal>prepare-agent</goal> - </goals> - </execution> - <execution> - <id>report</id> - <phase>prepare-package</phase> - <goals> - <goal>report</goal> - </goals> - </execution> - </executions> - </plugin> - </plugins> - </build> - - <dependencies> - <dependency> - <groupId>org.junit.jupiter</groupId> - <artifactId>junit-jupiter</artifactId> - <version>${junit.version}</version> - <scope>test</scope> - </dependency> - <dependency> - <groupId>org.xmlunit</groupId> - <artifactId>xmlunit-core</artifactId> - <version>${xmlunit.version}</version> - <scope>test</scope> - </dependency> - <dependency> - <groupId>org.mockito</groupId> - <artifactId>mockito-core</artifactId> - <version>${mockito.version}</version> - <scope>test</scope> - </dependency> - <dependency> - <groupId>org.hamcrest</groupId> - <artifactId>hamcrest</artifactId> - <version>2.2</version> - <scope>test</scope> - </dependency> - <dependency> - <groupId>org.apache.logging.log4j</groupId> - <artifactId>log4j-core</artifactId> - <version>2.14.0</version> - <scope>test</scope> - </dependency> - </dependencies> - - <profiles> - <!-- We need a fair amount of memory to compile the xml schema, --> - <!-- but limit it in case it goes wrong! --> - <!-- Pick the right amount based on 32 vs 64 bit jvm --> - <!-- ********************************************************** --> - <!-- If you are using IntelliJ, you might want to check --> - <!-- http://stackoverflow.com/questions/24115142 --> - <!-- ********************************************************** --> - <profile> - <id>32bitstuff</id> - <activation> - <property> - <name>sun.arch.data.model</name> - <value>32</value> - </property> - </activation> - <properties> - <maven.compiler.maxmem>512m</maven.compiler.maxmem> - <argLine>-Xmx768m</argLine> - </properties> - </profile> - - <profile> - <id>64bitstuff</id> - <activation> - <property> - <name>sun.arch.data.model</name> - <value>64</value> - </property> - </activation> - <properties> - <maven.compiler.maxmem>768m</maven.compiler.maxmem> - <argLine>-Xmx1024m</argLine> - </properties> - </profile> - - </profiles> -</project> diff --git a/sonar/scratchpad/pom.xml b/sonar/scratchpad/pom.xml deleted file mode 100644 index 073823e419..0000000000 --- a/sonar/scratchpad/pom.xml +++ /dev/null @@ -1,112 +0,0 @@ -<project xmlns="http://maven.apache.org/POM/4.0.0" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 - http://maven.apache.org/maven-v4_0_0.xsd"> - <modelVersion>4.0.0</modelVersion> - <parent> - <groupId>org.apache.poi</groupId> - <artifactId>poi-parent</artifactId> - <version>5.1.1-SNAPSHOT</version> - </parent> - <artifactId>poi-scratchpad</artifactId> - <packaging>jar</packaging> - - <name>Apache POI Scratchpad package</name> - - <properties> - <!-- Exclude some generated code from Sonar analysis --> - <sonar.exclusions>src/main/java/org/apache/poi/hwpf/model/types/*,src/main/java/org/apache/poi/hdf/model/hdftypes/definitions/*</sonar.exclusions> - </properties> - - - <build> - <plugins> - <!-- copy sources, resources and tests in place as otherwise Sonar does not pick them up correctly! --> - <plugin> - <artifactId>maven-resources-plugin</artifactId> - <version>${maven.plugin.resources.version}</version> - <executions> - <execution> - <id>copy-sources</id> - <!-- here the phase you need --> - <phase>generate-sources</phase> - <goals> - <goal>copy-resources</goal> - </goals> - <configuration> - <outputDirectory>${basedir}/src/main/java</outputDirectory> - <resources> - <resource> - <directory>../../poi-scratchpad/src/main/java</directory> - </resource> - </resources> - </configuration> - </execution> - <execution> - <id>copy-resources</id> - <!-- here the phase you need --> - <phase>generate-resources</phase> - <goals> - <goal>copy-resources</goal> - </goals> - <configuration> - <outputDirectory>${basedir}/src/main/resources</outputDirectory> - <resources> - <resource> - <directory>../../poi-scratchpad/src/main/resources</directory> - </resource> - </resources> - </configuration> - </execution> - <execution> - <id>copy-tests</id> - <!-- here the phase you need --> - <phase>generate-test-sources</phase> - <goals> - <goal>copy-resources</goal> - </goals> - <configuration> - <outputDirectory>${basedir}/src/test/java</outputDirectory> - <resources> - <resource> - <directory>../../poi-scratchpad/src/test/java</directory> - </resource> - <resource> - <directory>../../poi-scratchpad/src/test/resources</directory> - </resource> - </resources> - </configuration> - </execution> - </executions> - </plugin> - <!-- clean copied sources afterwards --> - <plugin> - <artifactId>maven-clean-plugin</artifactId> - <version>${maven.plugin.clean.version}</version> - <configuration> - <filesets> - <fileset> - <directory>src</directory> - <followSymlinks>false</followSymlinks> - </fileset> - </filesets> - </configuration> - </plugin> - </plugins> - </build> - - <dependencies> - <dependency> - <groupId>${project.groupId}</groupId> - <artifactId>poi-main</artifactId> - <version>${project.version}</version> - </dependency> - <dependency> - <groupId>${project.groupId}</groupId> - <artifactId>poi-main</artifactId> - <version>${project.version}</version> - <type>test-jar</type> - <scope>test</scope> - </dependency> - </dependencies> -</project> |