| <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>4.1.2-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>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-schema</module> |
| <module>ooxml-schema-encryption</module> |
| <module>ooxml-schema-security</module> |
| <module>ooxml</module> |
| <module>scratchpad</module> |
| <module>excelant</module> |
| <module>examples</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> |
| |
| <!-- define some of the third-party or plugin-versions globally to use the same in all modules --> |
| <xmlbeans.version>3.1.0</xmlbeans.version> |
| <junit.version>4.12</junit.version> |
| <xmlunit.version>2.5.1</xmlunit.version> |
| <mockito.version>2.13.0</mockito.version> |
| <maven.plugin.resources.version>3.0.1</maven.plugin.resources.version> |
| <maven.plugin.jar.version>3.0.1</maven.plugin.jar.version> |
| <maven.plugin.clean.version>3.0.0</maven.plugin.clean.version> |
| <maven.plugin.download.version>1.1.0</maven.plugin.download.version> |
| <maven.plugin.antrun.version>1.8</maven.plugin.antrun.version> |
| <maven.plugin.surefire.version>2.19.1</maven.plugin.surefire.version> |
| </properties> |
| |
| <build> |
| <pluginManagement> |
| <plugins> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-compiler-plugin</artifactId> |
| <version>3.5.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> |
| <dependencies> |
| <dependency> |
| <groupId>org.apache.maven.surefire</groupId> |
| <artifactId>surefire-junit47</artifactId> |
| <version>${maven.plugin.surefire.version}</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>@{argLine} -Duser.language=en -Duser.country=US -Xmx1024m -Djava.io.tmpdir=${basedir}/target/tmp |
| </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.2</version> |
| </plugin> |
| </plugins> |
| </build> |
| |
| <dependencies> |
| <dependency> |
| <groupId>junit</groupId> |
| <artifactId>junit</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> |
| </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> |
| |
| <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> |
| |
| <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> |
| <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> |
| <!-- the space between "public static" is on purpose to prevent double execution --> |
| <property name="loaderMethod"><![CDATA[ |
| private static java.lang.ref.SoftReference<org.apache.xmlbeans.SchemaTypeLoader> typeLoader; |
| |
| private static synchronized org.apache.xmlbeans.SchemaTypeLoader getTypeLoader() { |
| org.apache.xmlbeans.SchemaTypeLoader stl = (typeLoader == null) ? null : typeLoader.get(); |
| if (stl == null) { |
| stl = org.apache.xmlbeans.XmlBeans.typeLoaderForClassLoader(\2.class.getClassLoader()); |
| typeLoader = new java.lang.ref.SoftReference(stl); |
| } |
| return stl; |
| } |
| |
| public static \2 newInstance\(\) \{]]></property> |
| |
| <fileset id="xsrc" dir="${basedir}/target/generated-sources/xmlbeans" includes="**/*.java" excludes="**/impl/**"/> |
| |
| <replaceregexp byline="true" |
| match="(\s*)public static ([^ ]+) newInstance\(\) \{" |
| replace="${loaderMethod}"> |
| <fileset refid="xsrc"/> |
| </replaceregexp> |
| |
| <replace> |
| <fileset refid="xsrc"/> |
| <replacetoken>org.apache.xmlbeans.XmlBeans.getContextTypeLoader |
| </replacetoken> |
| <replacevalue>getTypeLoader</replacevalue> |
| </replace> |
| |
| <!-- remove deprecated warnings, as we prefer the array methods - see #56854 --> |
| <replace> |
| <fileset refid="xsrc"/> |
| <replacetoken><![CDATA[ * @deprecated |
| ]]></replacetoken> |
| </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>org.apache.xmlbeans</groupId> |
| <artifactId>xmlbeans</artifactId> |
| <version>${xmlbeans.version}</version> |
| </dependency> |
| </dependencies> |
| </profile> |
| </profiles> |
| </project> |