poi/sonar/ooxml-schema/pom.xml

157 lines
5.1 KiB
XML

<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.0.0-SNAPSHOT</version>
<relativePath>..</relativePath>
</parent>
<artifactId>poi-ooxml-schema</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}/../../src/ooxml/resources/org/apache/poi"/>
<copy todir="${basedir}/target/schemas">
<zipfileset src="${xsdir}/schemas/OfficeOpenXML-XMLSchema.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>
<additionalClasspathElements>
<additionalClasspathElement>
${basedir}/../../lib/ooxml/xmlbeans-4.0.0.jar
</additionalClasspathElement>
</additionalClasspathElements>
</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}/../../src/multimodule/ooxml-schemas/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>