-
intellij에서 git소스를 가져온 후 gradle build 가 되지 않을 때, run application이 정상적으로 되지 않을 때회사/사내개발 2020. 10. 22. 17:56
gitLab에서 프로젝트를 가져오는 것까지 성공 후
gradle build 인식이 되지 않아서 아무 라이브러리도 가져오지 않고, @SpringBootApplication과 같은 모든 어노테이션은 비활성화가 되어있다.
프로젝트 내 가장 상위폴더에 있는 .idea폴더가 프로젝트 설정을 담은 디렉토리라고 한다.
해당 디렉토리를 지운 후 프로젝트를 재시작하면 설정을 다시 읽어온다고 하는데 그대로 실행해도 되지 않는다..
===========================================================================
해결완료! 5시간정도 걸린 것 같음
* 해결과정
1. 우선 프로젝트 오픈을 다시했다. 위의 프로젝트 구조는 맨 위에 보이는 cntt-cms-order에 있는 build.gradle에서 모든 설정을 물고있기 때문에 intellij project open path를 프로젝트 최상위 경로 말고 ./cntt-cms-order로 들어가 열었다.
그렇게 하니 import가 쭉 되면서 gradle project가 인식이 된다.
( gradle이 인식이 계속 안될 경우 build.gradle 파일에서 우클릭 시 import gradle... 이라는 부분이 있다고 한다. 그걸 누르면 되는데 나는 지금 프로젝트가 정상적으로 인식되어있는 상태라 찾을 수가 없다. )
2. project import가 됐지만 build 하고 springBoot run할때까지는 문제가 없었지만 실행된 톰캣 포트번호로 화면에 접속하려하니 에러가 뜬다.
2020-10-22 17:41:07.210 ERROR(26004)[http-nio-38447-exec-3] [o.a.c.c.C.[Tomcat].[localhost]:185] Exception Processing ErrorPage[exceptionType=java.lang.Throwable, location=/error/default] java.lang.NoSuchMethodError: javax.servlet.http.HttpServletRequest.getHttpServletMapping()Ljavax/servlet/http/HttpServletMapping; at org.apache.catalina.core.ApplicationHttpRequest.setRequest(ApplicationHttpRequest.java:690) at org.apache.catalina.core.ApplicationHttpRequest.<init>(ApplicationHttpRequest.java:114) at org.apache.catalina.core.ApplicationDispatcher.wrapRequest(ApplicationDispatcher.java:917) at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:358)
원인을 찾다보니 내가 지금 사용하고 있는 Spring boot version은 2.x.x인데
SpringBoot 2점대는 내장톰캣이 9버전을 사용한다고 한다.
현재 내가 사용중인 jdk의 servlet-api.jar가 톰캣 9.0과 호환되지 않아 발생하는 것이라고 한다.
해당 라이브러리가 존재하는 톰캣경로 : 사용중인 jdk경로\jre\lib\ext
파일탐색기에 내 jdk경로에 들어가서 확인해보니 아예 servlet-api.jar라는 라이브러리가 없다.
톰캣9를 다운받아보면 안에 해당 라이브러리가 있으니 그 라이브러리를 가져와서 넣어주면 된다고 한다.
(기존에도 존재하는 경우 엎어치기)
톰캣9경로\apache-tomcat-9.0.39\lib 에 들어가보면 servlet-api.jar 요 라이브러리가 있다.
이걸 복사해서 위에서 언급한 경로 ( jdk경로\jre\lib\ext ) 이쪽경로에 넣어준다.
그렇게 실행하니 바로 정상으로 실행되며 화면도 정상적으로 나온다
오늘도 문제해결 이력을 기록해주신 블로거님들 덕분에 찝찝하지 않게 퇴근합니다
'회사 > 사내개발' 카테고리의 다른 글
mssql @과 #로 시작하는 임시테이블 차이 (0) 2021.01.26 [excel upload] apache POI를 사용하여 사용자가 업로드한 엑셀파일 읽어오기 / controller에서 엑셀 파일을 읽는 중 오류발생 (0) 2020.10.28 [pinpoint] 자바메모리(java memory) 사용, java out of memory (?) (0) 2020.10.21 [mssql] 대괄호 텍스트검색 (0) 2020.10.20 [mssql] WHERE DELETE_FLAG <> 'Y' 결과가 제대로 나오지 않을 때 (0) 2020.10.18