Получение java.lang.ClassNotFoundException: org.apache.pdfbox.exceptions.CryptographyException при использовании Lucene-PDFbox jar

Когда я запускаю этот код, я получаю следующее исключение. Работает нормально только с jar PDFBox. получение этого исключения только для jar-файла Lucene-PDFBox.

 import org.apache.lucene.document.Document;
 import org.apache.lucene.document.Field;
 import org.apache.pdfbox.lucene.LucenePDFDocument;
 import org.apache.pdfbox.multipdf.Splitter;
 import org.apache.pdfbox.pdmodel.PDDocument;
 import org.apache.pdfbox.pdmodel.common.PDStream;

 Document doc1 = LucenePDFDocument.getDocument(new 
 File("C:\\Users\\E075551\\Downloads\\resume.pdf"));
 System.out.println("END-------"+doc1.getFields().get(1));

Выброс java.lang.ClassNotFoundException: org.apache.pdfbox.exceptions.CryptographyException

Следы бывают:

java.lang.NoClassDefFoundError: org/apache/pdfbox/exceptions/CryptographyException
    at com.mastercard.pts.integrated.issuing.utils.PDFUtils.getContentRow(PDFUtils.java:118)
    at com.mastercard.pts.integrated.issuing.workflows.customer.cardmanagement.ReportVerificationWorkflow.getReportContent(ReportVerificationWorkflow.java:77)
    at com.mastercard.pts.integrated.issuing.workflows.customer.cardmanagement.ReportVerificationWorkflow.verifyGenericReport(ReportVerificationWorkflow.java:70)
    at com.mastercard.pts.integrated.issuing.workflows.customer.cardmanagement.ReportVerificationWorkflow.verifyGenericReport(ReportVerificationWorkflow.java:54)
    at com.mastercard.pts.integrated.issuing.workflows.customer.cardmanagement.ReportVerificationWorkflow$$FastClassBySpringCGLIB$$c86b4458.invoke(<generated>)
    at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204)
    at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:720)
    at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157)
    at org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint.proceed(MethodInvocationProceedingJoinPoint.java:85)
    at com.mastercard.pts.integrated.issuing.aop.ReportingAspect.proceedAndReportStep(ReportingAspect.java:47)
    at com.mastercard.pts.integrated.issuing.aop.ReportingAspect.proceedStep(ReportingAspect.java:30)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:620)
    at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethod(AbstractAspectJAdvice.java:609)
    at org.springframework.aop.aspectj.AspectJAroundAdvice.invoke(AspectJAroundAdvice.java:68)
    at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:168)
    at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:92)
    at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
    at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:655)
    at com.mastercard.pts.integrated.issuing.workflows.customer.cardmanagement.ReportVerificationWorkflow$$EnhancerBySpringCGLIB$$ab939610.verifyGenericReport(<generated>)
    at com.mastercard.pts.integrated.issuing.steps.customer.cardmanagement.ReportVerificationSteps.validateGenericReport(ReportVerificationSteps.java:30)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at org.jbehave.core.steps.StepCreator$ParametrisedStep.perform(StepCreator.java:733)
    at org.jbehave.core.embedder.PerformableTree$FineSoFar.run(PerformableTree.java:346)
    at org.jbehave.core.embedder.PerformableTree$PerformableSteps.perform(PerformableTree.java:1088)
    at org.jbehave.core.embedder.PerformableTree$AbstractPerformableScenario.performRestartableSteps(PerformableTree.java:953)
    at org.jbehave.core.embedder.PerformableTree$NormalPerformableScenario.perform(PerformableTree.java:992)
    at org.jbehave.core.embedder.PerformableTree$PerformableScenario.perform(PerformableTree.java:902)
    at org.jbehave.core.embedder.PerformableTree$PerformableStory.performScenarios(PerformableTree.java:825)
    at org.jbehave.core.embedder.PerformableTree$PerformableStory.perform(PerformableTree.java:798)
    at org.jbehave.core.embedder.PerformableTree.performCancellable(PerformableTree.java:422)
    at org.jbehave.core.embedder.PerformableTree.perform(PerformableTree.java:393)
    at org.jbehave.core.embedder.StoryManager$EnqueuedStory.call(StoryManager.java:292)
    at org.jbehave.core.embedder.StoryManager$EnqueuedStory.call(StoryManager.java:266)
    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
    at java.lang.Thread.run(Thread.java:748)
Caused by: java.lang.ClassNotFoundException: org.apache.pdfbox.exceptions.CryptographyException
    at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    ... 44 more

Не могли бы вы еще немного кода, как и весь класс здесь? Похоже, он каким-то образом не может найти ваш CryptographyException, можете ли вы проверить, доступен ли он в вашем репозитории!

robot_alien 23.07.2018 17:13

Мне не нужно объявлять CryptographyException. Document.getFields () выбрасывает это исключение.

monty 23.07.2018 17:18

Как вы управляете своими зависимостями?

Compass 23.07.2018 17:23

хорошо, где-то в вашем (PDFUtils.java:118) есть что-то намекающее на то, что требуется, но отсутствует? (или, вероятно, тот, который использует этот ваш служебный класс?) Я уверен, что похоже, что в зависимости отсутствует этот org.apache.pdfbox.exceptions.CryptographyException

robot_alien 23.07.2018 17:23

@Compass через Maven. и он не показывает отсутствующих библиотек.

monty 23.07.2018 17:26

@robot_alien Нет, он ни на что не намекает. Это может быть проблемой в банке Lucene-PDFBox.

monty 23.07.2018 17:27

пожалуйста, сделайте полную чистую сборку в своем проекте maven и обновите свою IDE в этом случае ...

robot_alien 23.07.2018 17:27

@robot_alien сделал это, все еще получая то же исключение.

monty 23.07.2018 17:32

Мы можем получить помпон? Я считаю, что это может быть неотмеченная транзитивная зависимость.

Compass 23.07.2018 17:43

LucenePDFDocument взят из PDFBox 1.8 и зависит от pdfbox.

Tilman Hausherr 23.07.2018 19:53
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
1
10
344
0

Другие вопросы по теме