You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pdfbox.apache.org by ms...@apache.org on 2016/10/02 14:17:09 UTC

pdfbox-docs git commit: PDFBOX-3330: document fontbox and xmpbox in the dependencis section. Add basic Ant instructions

Repository: pdfbox-docs
Updated Branches:
  refs/heads/master 9bbbcd2e0 -> 493c4026d


PDFBOX-3330: document fontbox and xmpbox in the dependencis section. Add basic Ant instructions


Project: http://git-wip-us.apache.org/repos/asf/pdfbox-docs/repo
Commit: http://git-wip-us.apache.org/repos/asf/pdfbox-docs/commit/493c4026
Tree: http://git-wip-us.apache.org/repos/asf/pdfbox-docs/tree/493c4026
Diff: http://git-wip-us.apache.org/repos/asf/pdfbox-docs/diff/493c4026

Branch: refs/heads/master
Commit: 493c4026d1d4eb43eb4eae1dcc7c7b2141bcb321
Parents: 9bbbcd2
Author: Maruan Sahyoun <sa...@fileaffairs.de>
Authored: Sun Oct 2 16:16:51 2016 +0200
Committer: Maruan Sahyoun <sa...@fileaffairs.de>
Committed: Sun Oct 2 16:16:51 2016 +0200

----------------------------------------------------------------------
 content/2.0/dependencies.md | 38 +++++++++++++++++++++++++++++++++++++-
 1 file changed, 37 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/pdfbox-docs/blob/493c4026/content/2.0/dependencies.md
----------------------------------------------------------------------
diff --git a/content/2.0/dependencies.md b/content/2.0/dependencies.md
index a775d42..4da7fee 100644
--- a/content/2.0/dependencies.md
+++ b/content/2.0/dependencies.md
@@ -22,6 +22,14 @@ title:   Dependencies
 
 # Dependencies
 
+## Core components
+
+<p class="alert alert-info">These components are needed during runtime, development and testing dependent on the details below.</p>
+
+The three PDFBox components are named ```pdfbox```, ```fontbox``` and ```xmpbox```. The Maven groupId of all PDFBox components is org.apache.pdfbox.
+
+### Minimum Requirement
+
 PDFBox has the following basic dependencies:
 
 - Java 6
@@ -33,6 +41,23 @@ included in the Java platform.
 
 For **PDFBox Preflight tests only** [commons-io 2.4](https://commons.apache.org/proper/commons-io/) is needed.
 
+### Font Handling
+For font handling the fontbox component is needed.
+
+### XMP Metadata
+To support XMP metadata the xmpbox component is needed.
+
+### Include Dependencies using Maven
+To add the pdfbox, fontbox, xmpbox and commons-logging jars to your application, the easiest thing is to declare the Maven dependency shown below. This gives you the main pdfbox library directly and the other required jars as transitive dependencies.
+
+    <dependency>
+      <groupId>org.apache.pdfbox</groupId>
+      <artifactId>pdfbox</artifactId>
+      <version>...</version>
+    </dependency>
+
+Set the version field to the latest stable PDFBox version.
+
 ## Optional components
 
 PDFBox does not ship with all features enabled. Third party components are necessary to get full support for certain functionality.
@@ -59,7 +84,7 @@ Encrypting and sigining PDFs requires the *bcprov*, *bcmail* and *bcpkix* librar
         <artifactId>bcprov-jdk15on</artifactId>
         <version>1.54</version>
     </dependency>
-    
+
     <dependency>
         <groupId>org.bouncycastle</groupId>
         <artifactId>bcmail-jdk15on</artifactId>
@@ -77,3 +102,14 @@ Encrypting and sigining PDFs requires the *bcprov*, *bcmail* and *bcpkix* librar
 256-bit AES encryption requires a JDK with "unlimited strength" cryptography, which requires extra files to be installed. For JDK 7, see [Java Cryptography Extension (JCE)](http://www.oracle.com/technetwork/java/javase/downloads/jce-7-download-432124.html). If these files are not installed, building PDFBox will throw an exception with the following message:
 
     JCE unlimited strength jurisdiction policy files are not installed
+
+## Dependencies for Ant builds
+
+The above instructions expect that you're using [Maven](http://maven.apache.org/) or another build tool like
+[Ivy](http://ant.apache.org/ivy/) that supports Maven dependencies.
+If you instead use tools like [Ant](http://ant.apache.org/) where you need to explicitly include all the required
+library jars in your application, you'll need to do something different.
+
+The easiest approach is to run ``mvn dependency:copy-dependencies`` inside the pdfbox directory of the latest PDFBox
+source release. This will copy all the required and optional libraries discussed above into the pdfbox/target/dependencies
+directory. You can then simply copy all the libraries you need from this directory to your application.