summaryrefslogtreecommitdiffstats
path: root/sonar/pom.xml
diff options
context:
space:
mode:
authorAndreas Beeker <kiwiwings@apache.org>2015-11-21 19:37:26 +0000
committerAndreas Beeker <kiwiwings@apache.org>2015-11-21 19:37:26 +0000
commit01a6730ea7798a5e506053e48b97feae2fded60d (patch)
tree421e6a95c07f32e926b8d1adccaca58d59005b85 /sonar/pom.xml
parent74d58c8bde9a00b9b3695665c3b7b12fe2a262f1 (diff)
downloadpoi-01a6730ea7798a5e506053e48b97feae2fded60d.tar.gz
poi-01a6730ea7798a5e506053e48b97feae2fded60d.zip
#58617 - Add custom safe XmlBeans type loader / rename vendor specific schema packages
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1715555 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'sonar/pom.xml')
-rw-r--r--sonar/pom.xml333
1 files changed, 222 insertions, 111 deletions
diff --git a/sonar/pom.xml b/sonar/pom.xml
index f17c0655af..fe10ac3b01 100644
--- a/sonar/pom.xml
+++ b/sonar/pom.xml
@@ -1,58 +1,52 @@
-<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>3.14-beta1-SNAPSHOT</version>
-
- <name>Apache POI - the Java API for Microsoft Documents</name>
-
- <description>Maven build of Apache POI for Sonar checks</description>
- <url>http://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>The Apache Software 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>
+<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>3.14-beta1-SNAPSHOT</version>
+ <name>Apache POI - the Java API for Microsoft Documents</name>
+ <description>Maven build of Apache POI for Sonar checks</description>
+ <url>http://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>The Apache Software 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://issues.apache.org/bugzilla/</url>
</issueManagement>
-
- <scm>
+
+ <scm>
<connection>scm:svn:http://svn.apache.org/repos/asf/poi/trunk</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/poi/trunk</developerConnection>
<url>http://svn.apache.org/viewvc/poi</url>
- </scm>
-
- <modules>
+ </scm>
+
+ <modules>
<module>main</module>
<module>ooxml-schema</module>
<module>ooxml-schema-encryption</module>
@@ -60,76 +54,193 @@
<module>ooxml</module>
<module>scratchpad</module>
<module>excelant</module>
- <module>examples</module>
- </modules>
-
+ <module>examples</module>
+ </modules>
+
<properties>
<project.build.sourceEncoding>ASCII</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>
</properties>
-
- <build>
- <pluginManagement>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-compiler-plugin</artifactId>
- <version>3.1</version>
- <configuration>
- <source>1.6</source>
- <target>1.6</target>
- </configuration>
- </plugin>
- </plugins>
- </pluginManagement>
-
+
+ <build>
+ <pluginManagement>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <version>3.1</version>
+ <configuration>
+ <source>1.6</source>
+ <target>1.6</target>
+ </configuration>
+ </plugin>
+ </plugins>
+ </pluginManagement>
<plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-surefire-plugin</artifactId>
- <version>2.16</version>
- <dependencies>
- <dependency>
- <groupId>org.apache.maven.surefire</groupId>
- <artifactId>surefire-junit47</artifactId>
- <version>2.16</version>
- </dependency>
- </dependencies>
-
- <configuration>
- <systemPropertyVariables>
- <POI.testdata.path>../../test-data</POI.testdata.path>
- <java.awt.headless>true</java.awt.headless>
- <org.apache.poi.util.POILogger>org.apache.poi.util.NullLogger</org.apache.poi.util.POILogger>
- </systemPropertyVariables>
- <!-- use to following to analyze OOM issues: -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/tmp -->
- <argLine>-Duser.language=en -Duser.country=US -Xmx1024m</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>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <version>2.16</version>
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.maven.surefire</groupId>
+ <artifactId>surefire-junit47</artifactId>
+ <version>2.16</version>
+ </dependency>
+ </dependencies>
+ <configuration>
+ <systemPropertyVariables>
+ <POI.testdata.path>../../test-data</POI.testdata.path>
+ <java.awt.headless>true</java.awt.headless>
+ <org.apache.poi.util.POILogger>org.apache.poi.util.NullLogger</org.apache.poi.util.POILogger>
+ </systemPropertyVariables>
+ <!-- use to following to analyze OOM issues: -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/tmp -->
+ <argLine>-Duser.language=en -Duser.country=US -Xmx1024m</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>
- </plugins>
- </build>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+
+ <dependencies>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>4.12</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 -->
+ <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>
+ </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>
+ </properties>
+ </profile>
+
+ <profile>
+ <id>xmlbean</id>
+ <activation>
+ <file><exists>xmlbeans.marker</exists></file>
+ </activation>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>xmlbeans-maven-plugin</artifactId>
+ <version>2.3.3</version>
+ <executions>
+ <execution>
+ <phase>process-sources</phase>
+ <goals>
+ <goal>xmlbeans</goal>
+ </goals>
+ <configuration>
+ <schemaDirectory>${basedir}/target/schemas</schemaDirectory>
+ <javaSource>1.5</javaSource>
+ <noJavac>true</noJavac>
+ <noUpa>${xmlbeans.noUpa}</noUpa>
+ <noPvr>${xmlbeans.noPvr}</noPvr>
+ <xmlConfigs>
+ <xmlConfig implementation="java.io.File">${basedir}/../../src/ooxml/resources/org/apache/poi/poifs/crypt/encryptionCertificate.xsdconfig</xmlConfig>
+ <xmlConfig implementation="java.io.File">${basedir}/../../src/ooxml/resources/org/apache/poi/poifs/crypt/encryptionInfo.xsdconfig</xmlConfig>
+ <xmlConfig implementation="java.io.File">${basedir}/../../src/ooxml/resources/org/apache/poi/poifs/crypt/encryptionPassword.xsdconfig</xmlConfig>
+ <xmlConfig implementation="java.io.File">${basedir}/../../src/ooxml/resources/org/apache/poi/schemas/ooxmlSchemas.xsdconfig</xmlConfig>
+ </xmlConfigs>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
- <dependencies>
+ <plugin>
+ <artifactId>maven-antrun-plugin</artifactId>
+ <version>1.8</version>
+ <executions>
+ <execution>
+ <id>copy-xmltype-and-xsdconfig</id>
+ <phase>generate-sources</phase>
+ <goals><goal>run</goal></goals>
+ <configuration>
+ <target>
+ <copy todir="${basedir}/target/generated-sources/xmlbeans">
+ <fileset dir="${basedir}/../../src/ooxml/java" includes="org/apache/poi/POIXMLTypeLoader.java"/>
+ </copy>
+ <copy todir="${basedir}/target/schemas">
+ <fileset dir="${basedir}/../../src/ooxml/resources/org/apache/poi/schemas"/>
+ </copy>
+ </target>
+ </configuration>
+ </execution>
+ <execution>
+ <id>replace-xmltypeloader</id>
+ <phase>process-sources</phase>
+ <goals><goal>run</goal></goals>
+ <configuration>
+ <target>
+ <replace dir="${basedir}/target/generated-sources/xmlbeans" includes="**/*.java" excludes="**/impl/**">
+ <replacetoken>org.apache.xmlbeans.XmlBeans.getContextTypeLoader()</replacetoken>
+ <replacevalue>org.apache.poi.POIXMLTypeLoader</replacevalue>
+ </replace>
+ </target>
+ </configuration>
+ </execution>
+ <execution>
+ <id>remove-xmltypeloader-from-schema-jar</id>
+ <phase>prepare-package</phase>
+ <goals><goal>run</goal></goals>
+ <configuration>
+ <target>
+ <touch file="${basedir}/target/generated-sources/xmlbeans/.staleFlag"/>
+ <delete dir="${basedir}/target/classes/org/apache"/>
+ </target>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+ <dependencies>
<dependency>
- <groupId>junit</groupId>
- <artifactId>junit</artifactId>
- <version>4.12</version>
- <scope>test</scope>
+ <groupId>org.apache.xmlbeans</groupId>
+ <artifactId>xmlbeans</artifactId>
+ <version>2.6.0</version>
</dependency>
- </dependencies>
+ </dependencies>
+ </profile>
+ </profiles>
</project>