2017-01-09 92 views
0

嘗試使用iText7在Android Studio中,我得到了以下錯誤消息:

Didn't find class "java.lang.Character$UnicodeScript" on path: DexPathList

到達時線document.add(new Paragraph("hello"));

在下面的代碼

public void CreatePDF() throws IOException{ 

    File file_pdf = new File("_TEST.pdf"); 
    FileOutputStream fos = new FileOutputStream(file_pdf); 

    PdfWriter writer = new PdfWriter(fos); 
    PdfDocument pdf = new PdfDocument(writer); 
    Document document = new Document(pdf); 

    document.add(new Paragraph("hello")); 

    document.close(); 
} 

我已經包含在\庫下列:

itext7-IO-7.0.1.jar

itext7內核-7.0.1.jar

itext7佈局-7.0.1.jar

SLF4J-API-1.7.22。罐子

SLF4J-簡單1.7.22.jar

與以下相關:

<dependency> 
     <groupId>com.itextpdf</groupId> 
     <artifactId>kernel</artifactId> 
     <version>7.0.1</version> 
    </dependency> 
    <dependency> 
     <groupId>com.itextpdf</groupId> 
     <artifactId>layout</artifactId> 
     <version>7.0.1</version> 
    </dependency> 
    <dependency> 
     <groupId>org.slf4j</groupId> 
     <artifactId>slf4j-log4j12</artifactId> 
     <version>1.7.22</version> 
    </dependency> 

任何想法有什麼不對? 在此先感謝

+0

我不知道什麼是錯呢,但我們還沒有發佈iText 7的Android版本。 –

回答

1

,官方的回答:

iText的7需要Java 7的這個錯誤告訴你的是,類Character.UnicodeScript丟失。當您檢查API文檔時,您會發現此類是在Java 1.7版中引入的:http://docs.oracle.com/javase/7/docs/api/java/lang/Character.UnicodeScript.html(在該頁上查找從:)。我假設你的Android設置使用了與Java 7不兼容的Dalvik系統版本.類沒有出現在你的Android設置中。

您的信息的附加備註:

至於阿梅代表示,沒有的Android端口iText的7,我們可能不會做出這樣的端口,因爲我們幾乎沒有出售任何iTextG(或「iText的所以我猜你唯一的選擇是使用iText 5的Android端口iTextG。

許多開發人員不明白使用AGPL軟件意味着所有使用iText的軟件都必須是僅適用於AGPL,並且在您通過任何其他許可證(例如商業許可證)分發軟件的那一刻,需要使用iText軟件購買商業許可證。此產品或該產品的銷售對於iText集團定義技術路線圖非常重要。 iTextG的銷售數字不佳,以及我們很難找到任何AGPL Android項目,其中iTextG在AGPL下使用,導致iText在Android上的優先級非常低。

我的情況下,將這些信息你正準備發佈一個後續的問題,問我們,爲什麼我們不爲iText的7提供的Android端口

相關問題