问题
i am trying to use pdfbox lib into my android app but im getting
java.lang.NoClassDefFoundError: org.pdfbox.pdmodel.PDDocument
this error .as i'm developing commercial app i can not use other Lib like itext .So my question is can we use PDfBox in android.
here is my code:-
PDFParser parser = null;
String parsedText = null;
PDFTextStripper pdfStripper;
PDDocument pdDoc = null;
COSDocument cosDoc = null;
PDDocumentInformation pdDocInfo;
try {
f =new File(Environment.getExternalStorageDirectory()+File.separator+"Download"+File.separator+"Services.pdf");
if(f.exists()){
System.out.println("---------exists-----------");
}else{
System.out.println("------NOT----exists----------");
}
parser = new PDFParser(new FileInputStream(f));
} catch (Exception e) {
System.out.println("Unable to open PDF Parser.");
System.out.println("-----------------------error|"+e.toString());
}
try {
parser.parse();
cosDoc = parser.getDocument();
pdfStripper = new PDFTextStripper();
pdDoc = new PDDocument(cosDoc);//here i'm getting exception
//pdDoc = PDDocument.load(f, false);
parsedText = pdfStripper.getText(pdDoc);
} catch (Exception e) {
System.out.println("-----------------------error|"+e.toString());
System.out.println("An exception occured in parsing the PDF Document.");
e.printStackTrace();
try {
if (cosDoc != null) cosDoc.close();
if (pdDoc != null) pdDoc.close();
} catch (Exception e1) {
e.printStackTrace();
}
}
System.out.println("Done.");
System.out.println("-----------------------parsedText|"+parsedText);
using PDFBox 0.7.3 jar
回答1:
It seems that PDFBox is depending on awt and swing classes that are not available on Android devices.
Therefor you can not use PDFBox on Android.
回答2:
NoClassDefFoundError is thrown when the JVM can't load a class.
As the javadoc says
Have you included the pdfbox library on classpath during compilation?
回答3:
If you only need to extract text from PDF document in Android , then use this https://github.com/RatheeshRavindran/PDFBoxLight I recently did the porting of PDFBox to Android but please note that this still in Beta.
来源:https://stackoverflow.com/questions/9696157/pdfbox-for-processing-pdf-in-android