Cloudera CDH/CDP 및 Hadoop EcoSystem, Semantic IoT등의 개발/운영 기술을 정리합니다. gooper@gooper.com로 문의 주세요.
spring-mybatis 초기 오류(java.lang.NoSuchMethodError)에 따른 후속 작업에서 오류(java.lang.NoClassDefFoundError)가 발생되는 상황(quartz에서 주기적으로 작업시)
quartz를 이용하여 주기적으로 작업을 처리하는 모듈에서 아래와 같은 오류가 계속 발생하는데..
오류내용(1)이 발생후 오류내용(2)가 반복적으로 발생함(quartz때문에 반복적으로 발생하는거 같음)
jackson-core-asl및 jackson-mapper-asl을 이용하는데 버젼이 1.1.1을 사용한다.(버젼이 너무 오래됨)
그래서 버젼을 1.9.4로 바꿔주고 다시 compile후에 package을 했더니.. 정상적으로 수행된다.
(이거 찾느라고 하루를 보냈다. 아흐..)
----------오류내용(2)---------
java.lang.NoClassDefFoundError: Could not initialize class com.gooper.icbms.sda.comm.kafka.avro.COL_ONEM2M
at com.gooper.icbms.sda.sch.service.CollectStatusDataFromSIJobService.collect(CollectStatusDataFromSIJobService.java:203)
at com.gooper.icbms.sda.sch.service.CollectStatusDataFromSIJobService.execute(CollectStatusDataFromSIJobService.java:290)
at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:525)
[2016-08-29 10:24:00] [ErrorLogger] [2185] [ERROR] Job (TG1000.CollectStatusDatatFromSIJob threw an exception.
org.quartz.SchedulerException: Job threw an unhandled exception. [See nested exception: java.lang.NoClassDefFoundError: Could not initialize class com.gooper.icbms.sda.comm.kafka.avro.COL_ONEM2M]
at org.quartz.core.JobRunShell.run(JobRunShell.java:213)
at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:525)
Caused by: java.lang.NoClassDefFoundError: Could not initialize class com.gooper.icbms.sda.comm.kafka.avro.COL_ONEM2M
at com.gooper.icbms.sda.sch.service.CollectStatusDataFromSIJobService.collect(CollectStatusDataFromSIJobService.java:203)
at com.gooper.icbms.sda.sch.service.CollectStatusDataFromSIJobService.execute(CollectStatusDataFromSIJobService.java:290)
at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
... 1 more
----------오류내용(1)---------
2016-08-29 14:03:30] [JobRunShell] [211] [ERROR] Job TG1000.CollectStatusDatatFromSIJob threw an unhandled Exception:
java.lang.NoSuchMethodError: org.codehaus.jackson.JsonFactory.enable(Lorg/codehaus/jackson/JsonParser$Feature;)Lorg/codehaus/jackson/JsonFactory;
at org.apache.avro.Schema.<clinit>(Schema.java:86)
at org.apache.avro.Schema$Parser.parse(Schema.java:953)
at com.gooper.icbms.sda.comm.kafka.avro.COL_ONEM2M.<clinit>(COL_ONEM2M.java:10)
at com.gooper.icbms.sda.sch.service.CollectStatusDataFromSIJobService.collect(CollectStatusDataFromSIJobService.java:203)
at com.gooper.icbms.sda.sch.service.CollectStatusDataFromSIJobService.execute(CollectStatusDataFromSIJobService.java:290)
at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:525)
[2016-08-29 14:03:30] [ErrorLogger] [2185] [ERROR] Job (TG1000.CollectStatusDatatFromSIJob threw an exception.
org.quartz.SchedulerException: Job threw an unhandled exception. [See nested exception: java.lang.NoSuchMethodError: org.codehaus.jackson.JsonFactory.enable(Lorg/codehaus/jackson/JsonParser$Feature;)Lorg/codehaus/jackson/JsonFactory;]
at org.quartz.core.JobRunShell.run(JobRunShell.java:213)
at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:525)
Caused by: java.lang.NoSuchMethodError: org.codehaus.jackson.JsonFactory.enable(Lorg/codehaus/jackson/JsonParser$Feature;)Lorg/codehaus/jackson/JsonFactory;
at org.apache.avro.Schema.<clinit>(Schema.java:86)
at org.apache.avro.Schema$Parser.parse(Schema.java:953)
at com.gooper.icbms.sda.comm.kafka.avro.COL_ONEM2M.<clinit>(COL_ONEM2M.java:10)
at com.gooper.icbms.sda.sch.service.CollectStatusDataFromSIJobService.collect(CollectStatusDataFromSIJobService.java:203)
at com.gooper.icbms.sda.sch.service.CollectStatusDataFromSIJobService.execute(CollectStatusDataFromSIJobService.java:290)
at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
... 1 more
댓글 0
번호 | 제목 | 날짜 | 조회 수 |
---|---|---|---|
13 | AIX 7.1에 Python 2.7.11설치하기 | 2016.10.06 | 1253 |
12 | DBCP Datasource(org.apache.commons.dbcp.BasicDataSource) 설정 및 속성 설명 | 2016.09.26 | 966 |
11 | [Mybatis]Spring과 연동하지 않고 Java+Mybatis 형태의 프로그램 샘플소스 | 2016.09.01 | 1014 |
» | 초기 오류(java.lang.NoSuchMethodError)에 따른 후속 작업에서 오류(java.lang.NoClassDefFoundError)가 발생되는 상황(quartz에서 주기적으로 작업시) | 2016.08.29 | 741 |
9 | servlet-api를 jar형태로 build할때 포함하지 말고 java 설치 위치의 jre/lib/ext에 복사하여 사용하는것이 좋다. | 2016.08.10 | 650 |
8 | Windows에서 sbt개발환경 구축 방법(링크) | 2016.06.02 | 272 |
7 | python 2.6.6에서 print 'A=' 형태의 사용이 python 3.5.1에서 오류(SyntaxError: Missing parentheses in call to 'print') 발생함.. | 2016.05.27 | 640 |
6 | CentOS6에 python3.5.1 소스코드로 빌드하여 설치하기 | 2016.05.27 | 928 |
5 | java quartz 시간 설정 참고사항 | 2015.12.16 | 822 |
4 | 마이바티스(MyBatis)쿼리로그 출력및 정렬하기 | 2015.12.01 | 1610 |
3 | mybais #과 $의 차이점 | 2015.11.10 | 911 |
2 | Mybatis foreach 문법정리(상황에 따른 사용법) | 2015.11.10 | 1842 |
1 | jsoup 사용 예제 | 2014.06.06 | 1849 |