Caused by: org.apache.ibatis.type.TypeException: Could not resolve type alias 'xxx'. Cause: java.lang.ClassNotFoundException: Cannot find class: xxx

팀 프로젝트 중 각 기능을 merge하는 과정에서 다음과 같은 오류 발생.
오류상 type alias를 모두 확인해본 결과 문제가 없다.

이유: xxx 자바파일이 컴파일되어 클래스파일이 만들어지는데, 컴파일할때의 자바버전(jdk)이 현재 실행환경의 자바버전(jre)과 달라서 클래스파일을 인식하지 못함
해결: 
1. xxx에 해당하는 자바 파일을 모두 삭제
2. xxx에 해당하는 alias와 mapper를 삭제
3. 1,2번을 원상복귀


Context initialization failed
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sqlSessionFactory' defined in class path resource [applicationContext-persistence.xml]: Invocation of init method failed; nested exception is org.springframework.core.NestedIOException: Failed to parse mapping resource: 'file [/home/izeye/programs/apache-tomcat-7.0.47/webapps/ROOT/WEB-INF/classes/mybatis/mappers/xxx-dao.xml]'; nested exception is java.lang.RuntimeException: Error parsing Mapper XML. Cause: org.apache.ibatis.builder.BuilderException: Error resolving class. Cause: org.apache.ibatis.type.TypeException: Could not resolve type alias 'xxx'.  Cause: java.lang.ClassNotFoundException: Cannot find class: xxx
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1482)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:521)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:458)
        at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:295)
        at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:223)
        at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:292)
        at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:194)
        at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:608)
        at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:932)
        at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:479)
        at org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:389)
        at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:294)
        at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:112)
        at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4939)
        at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5434)
        at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
        at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)
        at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)
        at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:633)
        at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1120)
        at org.apache.catalina.startup.HostConfig$DeployDirectory.run(HostConfig.java:1678)
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
        at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
        at java.util.concurrent.FutureTask.run(FutureTask.java:166)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
        at java.lang.Thread.run(Thread.java:679)
Caused by: org.springframework.core.NestedIOException: Failed to parse mapping resource: 'file [/home/izeye/programs/apache-tomcat-7.0.47/webapps/ROOT/WEB-INF/classes/mybatis/mappers/xxx-dao.xml]'; nested exception is java.lang.RuntimeException: Error parsing Mapper XML. Cause: org.apache.ibatis.builder.BuilderException: Error resolving class. Cause: org.apache.ibatis.type.TypeException: Could not resolve type alias 'xxx'.  Cause: java.lang.ClassNotFoundException: Cannot find class: xxx
        at org.mybatis.spring.SqlSessionFactoryBean.buildSqlSessionFactory(SqlSessionFactoryBean.java:462)
        at org.mybatis.spring.SqlSessionFactoryBean.afterPropertiesSet(SqlSessionFactoryBean.java:336)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1541)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1479)
        ... 26 more
Caused by: java.lang.RuntimeException: Error parsing Mapper XML. Cause: org.apache.ibatis.builder.BuilderException: Error resolving class. Cause: org.apache.ibatis.type.TypeException: Could not resolve type alias 'xxx'.  Cause: java.lang.ClassNotFoundException: Cannot find class: xxx
        at org.apache.ibatis.builder.xml.XMLMapperBuilder.configurationElement(XMLMapperBuilder.java:113)
        at org.apache.ibatis.builder.xml.XMLMapperBuilder.parse(XMLMapperBuilder.java:88)
        at org.mybatis.spring.SqlSessionFactoryBean.buildSqlSessionFactory(SqlSessionFactoryBean.java:460)
        ... 29 more
Caused by: org.apache.ibatis.builder.BuilderException: Error resolving class. Cause: org.apache.ibatis.type.TypeException: Could not resolve type alias 'xxx'.  Cause: java.lang.ClassNotFoundException: Cannot find class: xxx
        at org.apache.ibatis.builder.BaseBuilder.resolveClass(BaseBuilder.java:100)
        at org.apache.ibatis.builder.xml.XMLMapperBuilder.resultMapElement(XMLMapperBuilder.java:257)
        at org.apache.ibatis.builder.xml.XMLMapperBuilder.resultMapElement(XMLMapperBuilder.java:244)
        at org.apache.ibatis.builder.xml.XMLMapperBuilder.resultMapElements(XMLMapperBuilder.java:236)
        at org.apache.ibatis.builder.xml.XMLMapperBuilder.configurationElement(XMLMapperBuilder.java:109)
        ... 31 more
Caused by: org.apache.ibatis.type.TypeException: Could not resolve type alias 'xxx'.  Cause: java.lang.ClassNotFoundException: Cannot find class: xxx
        at org.apache.ibatis.type.TypeAliasRegistry.resolveAlias(TypeAliasRegistry.java:114)
        at org.apache.ibatis.builder.BaseBuilder.resolveAlias(BaseBuilder.java:127)
        at org.apache.ibatis.builder.BaseBuilder.resolveClass(BaseBuilder.java:98)
        ... 35 more
Caused by: java.lang.ClassNotFoundException: Cannot find class: xxx
        at org.apache.ibatis.io.ClassLoaderWrapper.classForName(ClassLoaderWrapper.java:188)
        at org.apache.ibatis.io.ClassLoaderWrapper.classForName(ClassLoaderWrapper.java:87)
        at org.apache.ibatis.io.Resources.classForName(Resources.java:254)
        at org.apache.ibatis.type.TypeAliasRegistry.resolveAlias(TypeAliasRegistry.java:110)
        ... 37 more

출처: http://devday.tistory.com/entry/Caused-by-orgapacheibatistypeTypeException-Could-not-resolve-type-alias-xxx-Cause-javalangClassNotFoundException-Cannot-find-class-xxx [개발자의 하루]

댓글

이 블로그의 인기 게시물

AWS RDS DB 인스턴스에 연결하기 (Oracle Database Instance)

tomcat server.xml ( 톰캣 서버 설정 )

Git resolving merge conflicts as Mark resolved (mark resolved 옵션으로 해결)