iText:在android中创建pdf文件时遇到问题

iText:在android中创建pdf文件时遇到问题,android,pdf,itext,Android,Pdf,Itext,我在android中创建pdf文件时遇到了iText问题。它不断崩溃,此错误不断出现在日志cat中: java.lang.NoClassDefFoundError:com.itextpdf.text.Document 这是我的java文件: import java.io.FileNotFoundException; import java.io.FileOutputStream; import android.app.Activity; import android.os.Bundle; im

我在android中创建pdf文件时遇到了iText问题。它不断崩溃,此错误不断出现在日志cat中:

java.lang.NoClassDefFoundError:com.itextpdf.text.Document

这是我的java文件:

import java.io.FileNotFoundException;
import java.io.FileOutputStream;

import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;

import com.itextpdf.text.Document;
import com.itextpdf.text.DocumentException;
import com.itextpdf.text.Paragraph;
import com.itextpdf.text.pdf.PdfWriter;

public class MainActivity extends Activity {

public static Button button;

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    button = (Button) findViewById(R.id.Submit);

    button.setOnClickListener(new OnClickListener() 
    {           
        public void onClick(View arg0) 
        {
            // TODO Auto-generated method stub

            toPDF();

        }
    });
}

public void toPDF(){

    Document document=new Document();
    try {
        PdfWriter.getInstance(document,new FileOutputStream("try.pdf"));
        document.open();
        document.add(new Paragraph("Hello Android!! :)"));
        document.close();
    } catch (FileNotFoundException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } catch (DocumentException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
 }
我已经在AndroidManifest.xml中包含了

这是我的.类路径

<?xml version="1.0" encoding="UTF-8"?>
<classpath>
     <classpathentry kind="src" path="src"/>
     <classpathentry kind="src" path="gen"/>
     <classpathentry kind="con" path="com.android.ide.eclipse.adt.ANDROID_FRAMEWORK"/>
     <classpathentry kind="con" path="com.android.ide.eclipse.adt.LIBRARIES"/>
     <classpathentry kind="lib" path="C:/Users/joan/Documents/Eclipse Workspace/itext-5.3.4/itextpdf-5.3.4.jar"/>
     <classpathentry kind="lib" path="C:/Users/joan/Documents/Eclipse Workspace/itext-5.3.4/itextpdf-5.3.4-javadoc.jar"/>
     <classpathentry kind="lib" path="C:/Users/joan/Documents/Eclipse Workspace/itext-5.3.4/itextpdf-5.3.4-sources.jar"/>
     <classpathentry kind="lib" path="C:/Users/joan/Documents/Eclipse Workspace/itext-5.3.4/itext-pdfa-5.3.4.jar"/>
     <classpathentry kind="lib" path="C:/Users/joan/Documents/Eclipse Workspace/itext-5.3.4/itext-pdfa-5.3.4-javadoc.jar"/>
     <classpathentry kind="lib" path="C:/Users/joan/Documents/Eclipse Workspace/itext-5.3.4/itext-pdfa-5.3.4-sources.jar"/>
     <classpathentry kind="lib" path="C:/Users/joan/Documents/Eclipse Workspace/itext-5.3.4/itext-xtra-5.3.4.jar"/>
     <classpathentry kind="lib" path="C:/Users/joan/Documents/Eclipse Workspace/itext-5.3.4/itext-xtra-5.3.4-javadoc.jar"/>
     <classpathentry kind="lib" path="C:/Users/joan/Documents/Eclipse Workspace/itext-5.3.4/itext-xtra-5.3.4-sources.jar"/>
     <classpathentry kind="output" path="bin/classes"/>
</classpath>

我还尝试插入SD卡,因为有人说这可能是问题所在,但它还是崩溃了


希望有人能帮助我。。我是android新手..:|

出现此错误的原因只有三个:

  • 这个阶级实际上并不存在。如果您使用的是来自官方示例的代码,并且得到了这些代码,请确保您拥有库的最新版本
  • 您尚未将jar添加到构建路径中。要解决这个问题,右键单击Eclipse中的jar,然后执行构建路径► 添加到构建路径
  • 您的jar不在/libs文件夹中。当您将jar添加到构建路径中,但较新版本的ADT需要它位于/libs中时,就会发生这种情况。将它放在那里并重新添加到构建路径
  • 大多数情况下,发生此类错误是因为较新版本的ADT要求所有外部JAR都位于libs文件夹中。您的同事可能与您的版本不同,因此出现了错误


    在您的情况下,只需将所有必要的jar文件从
    itext-5.3.4
    移动到
    libs

    中,谢谢!我将必要的jar文件移动到
    libs
    。。这就成功了……)再次感谢!