2014-11-18 8 views
1

itextpdf.5.4.1을 사용하여 pdf 파일을 일반 텍스트로 다운로드하고 변환하려고합니다. 그들 중 대부분은 내 코드가 작동하지만 그 중 하나에 대한 파일을 읽으려고 할 때 아래 오류가 발생했습니다.org/bouncycastle/asn1/ASN1Primitive error

PdfReader reader = new PdfReader(pdf_file_path); 


Exception in thread "main" java.lang.NoClassDefFoundError: org/bouncycastle/asn1/ASN1Primitive 

이 PDF는 보호되어 있으며 텍스트를 추출 할 방법이 없나요?

+1

가능한 중복 : // 유래. com/questions/14042693/itext-and-org-bouncycastle-asn1-asn1primitive-not-found) – mkl

+0

그리고 [java]가 아니라 [javascript]를 사용 하시겠습니까? – mkl

+0

thanx @mkl. 나는 그것을 편집했다. –

답변

0

프로젝트의 다른 버전의 itext가 원인입니다. 빌드 파일의 종속성을 확인하십시오.

+0

질문에 대한 의견을 읽는다면 다른 iText 버전이 아니라 처음에는 잘못되었거나 나중에 다른 BouncyCastle 버전임을 * 알 수있을 것입니다. – mkl

+0

bouncycasle lib는 분명히 위의 클래스를 포함하지만 일반적으로 명시 적으로 사용되지 않습니다. 내가 말하고자하는 것은 이것이 아마도 Itext (com.itextpdf 또는 com.lowagie.itext) libs –

+0

과 하나 더 많은 것들로부터의 의존성에 관한 것입니다 : target lib는 부모 pom.xml에서 선택 사항으로 표시 될 수 있습니다 (만약 당신이 ' Maven), 때로는 org.bouncycastle (bcprov)과 같은 lib를 프로젝트에 명시 적으로 추가해야합니다. –

3

itext 5.5.10을 읽는 동안 나도 같은 문제에 직면했습니다.

나는 다음에 의존성을 변경 :

<dependency> 
     <groupId>com.itextpdf</groupId> 
     <artifactId>itextpdf</artifactId> 
     <version>5.5.4</version> 
    </dependency> 
    <dependency> 
     <groupId>org.bouncycastle</groupId> 
     <artifactId>bcprov-jdk15on</artifactId> 
     <version>1.49</version> 
    </dependency> 
    <dependency> 
     <groupId>org.bouncycastle</groupId> 
     <artifactId>bcpkix-jdk15on</artifactId> 
     <version>1.49</version> 
    </dependency> 

또한 참조 할 수 있습니다 : [iText를하고 org.bouncycastle.asn1.ASN1Primitive를 찾을 수 없습니다 (HTTP의 https://stackoverflow.com/a/27575336/3150912

+1

5.5.4는 5.5.10에서 상당히 뒤로 물러납니다. 또한이 다운 그레이드는 필요하지 않습니다. – mkl

+1

@mkl 다시 5.5.10으로 돌아가서이 작업을 시도해 보았습니다. 제안에 감사드립니다. –