mirror of https://github.com/apache/poi.git
Make a start on an Ant task to generate an OSGi jar, for #53866
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1602846 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
193d615895
commit
42bee0dcba
|
@ -0,0 +1,67 @@
|
|||
<?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.
|
||||
-->
|
||||
|
||||
<!-- POI OSGi Bundle System -->
|
||||
<project name="POI OSGi Bundle" default="bundle" basedir=".." xmlns:mvn="antlib:org.apache.maven.artifact.ant">
|
||||
<description>The Apache POI OSGi Bundle System.</description>
|
||||
|
||||
<property name="bundle.lib" location="osgi/lib"/>
|
||||
|
||||
<!-- TODO Import these from the parent build file -->
|
||||
<property name="repository.m2" value="http://repo1.maven.org"/>
|
||||
<property name="version.id" value="3.11-beta1"/>
|
||||
<property name="dist.dir" value="build/dist"/>
|
||||
|
||||
<!-- jars in the /lib directory, see the fetch-bundle-jars target-->
|
||||
<property name="bundle.bnd.jar" location="${bundle.lib}/bnd-1.50.0.jar"/>
|
||||
<property name="bundle.bnd.url" value="${repository.m2}/maven2/biz/aQute/bnd/1.50.0/bnd-1.50.0.jar"/>
|
||||
<import file="../build.xml"/>
|
||||
|
||||
<target name="check-bundle-jars">
|
||||
<condition property="jars.bundle.present">
|
||||
<available file="${bundle.bnd.jar}"/>
|
||||
</condition>
|
||||
</target>
|
||||
|
||||
<target name="fetch-bundle-jars" unless="jars.bundle.present">
|
||||
<mkdir dir="${bundle.lib}"/>
|
||||
<antcall target="downloadfile">
|
||||
<param name="sourcefile" value="${bundle.bnd.url}"/>
|
||||
<param name="destfile" value="${bundle.bnd.jar}"/>
|
||||
</antcall>
|
||||
</target>
|
||||
|
||||
<!--
|
||||
<target name="bundle" depends="init, check-bundle-jars, fetch-bundle-jars, jar">
|
||||
-->
|
||||
<target name="bundle" depends="init, check-bundle-jars, fetch-bundle-jars">
|
||||
<taskdef resource="aQute/bnd/ant/taskdef.properties" classpath="${bundle.bnd.jar}"/>
|
||||
<mkdir dir="build/osgi"/>
|
||||
<bnd
|
||||
classpath="${dist.dir}/poi-${version.id}-${DSTAMP}.jar,${dist.dir}/poi-scratchpad-${version.id}-${DSTAMP}.jar,${dist.dir}/poi-ooxml-${version.id}-${DSTAMP}.jar"
|
||||
eclipse="false"
|
||||
failok="false"
|
||||
exceptions="true"
|
||||
output="build/osgi"
|
||||
files="test.bnd"/>
|
||||
<!-- TODO Include the settings from http://svn.apache.org/repos/asf/servicemix/smx4/bundles/trunk/poi-3.9/pom.xml -->
|
||||
<!-- TODO Make this actually spit out an OSGi Jar -->
|
||||
</target>
|
||||
</project>
|
|
@ -0,0 +1,38 @@
|
|||
\u001B[1mSYNOPSIS\u001B[0m
|
||||
${project.description}
|
||||
|
||||
Original Maven URLs:
|
||||
\u001B[33mmvn:${pkgGroupId}/poi/${pkgVersion}\u001B[0m
|
||||
\u001B[33mmvn:${pkgGroupId}/poi-ooxml/${pkgVersion}\u001B[0m
|
||||
\u001B[33mmvn:${pkgGroupId}/poi-scratchpad/${pkgVersion}\u001B[0m
|
||||
|
||||
\u001B[1mDESCRIPTION\u001B[0m
|
||||
The Apache POI Project's mission is to create and maintain Java APIs for manipulating various file formats based
|
||||
upon the Office Open XML standards (OOXML) and Microsoft's OLE 2 Compound Document format (OLE2). In short, you can
|
||||
read and write MS Excel files using Java. In addition, you can read and write MS Word and MS PowerPoint files using
|
||||
Java. Apache POI is your Java Excel solution (for Excel 97-2008). We have a complete API for porting other OOXML and
|
||||
OLE2 formats and welcome others to participate.
|
||||
|
||||
OLE2 files include most Microsoft Office files such as XLS, DOC, and PPT as well as MFC serialization API based file
|
||||
formats. The project provides APIs for the OLE2 Filesystem (POIFS) and OLE2 Document Properties (HPSF).
|
||||
|
||||
Office OpenXML Format is the new standards based XML file format found in Microsoft Office 2007 and 2008. This
|
||||
includes XLSX, DOCX and PPTX. The project provides a low level API to support the Open Packaging Conventions using
|
||||
openxml4j.
|
||||
|
||||
For each MS Office application there exists a component module that attempts to provide a common high level Java api
|
||||
to both OLE2 and OOXML document formats. This is most developed for Excel workbooks (SS=HSSF+XSSF). Work is
|
||||
progressing for Word documents (HWPF+XWPF) and PowerPoint presentations (HSLF+XSLF).
|
||||
|
||||
The project has recently added support for Outlook (HSMF). Microsoft opened the specifications to this format in
|
||||
October 2007. We would welcome contributions.
|
||||
|
||||
There are also projects for Visio (HDGF), TNEF (HMEF), and Publisher (HPBF).
|
||||
|
||||
As a general policy we collaborate as much as possible with other projects to provide this functionality.
|
||||
Examples include: Cocoon for which there are serializers for HSSF; Open Office.org with whom we collaborate in
|
||||
documenting the XLS format; and Tika / Lucene, for which we provide format interpretors.
|
||||
When practical, we donate components directly to those projects for POI-enabling them.
|
||||
|
||||
\u001B[1mSEE ALSO\u001B[0m
|
||||
\u001B[36mhttp://poi.apache.org/\u001B[0m
|
Loading…
Reference in New Issue