728x90
반응형

tomcat 8.5.41

gradle 프로젝트

 

The web application [projectName] registered the JDBC driver [com.mysql.jdbc.Driver] but failed to unregister it when the web application was stopped. To prevent a memory leak, the JDBC Driver has been forcibly unregistered.

 

tomcat에서 war 배포시 위와 같은 오류 메시지와 함께 창이 사라졌다.

다른 사람들은 무시해도 된다고 했든데 난 tomcat 창이 죽어버리니 미쳐버릴 노릇.

해결방법으로 제시된 것은 프로젝트의 lib 폴더에서 드라이버.jar 파일을 제거 후 war를 만들고,

tomat설치폴더/lib/ 에 드라이버.jar 파일을 넣으라는 것이다.

 

 

그래서 아래와 같이 해결

 

1. gradle의 mysql driver에 해당되는 것을 아래와 같이 변경한다.

compile("mysql:mysql-connector-java:5.1.13") => providedCompile("mysql:mysql-connector-java:5.1.13")

providedCompile 은 컴파일할때는 포함하고 war 생성시는 제외한다는 의미

 

2. gradle을 사용하고 있다면 아마도 드라이버.jar 파일이 없을테니 검색해서 다운로드 한다.

https://dev.mysql.com/downloads/connector/j/5.1.html

 

3. 다운로드 받은 드라이버.jar 파일을 tomcat 설치 폴더의 lib에 복사해 준다.

tomcat설치 폴더가 C:\apache-tomcat-8.5.41 라면 C:\apache-tomcat-8.5.41\lib 여기에

 

 

이렇게 해서 해결.

아.. 모르면 손발이 고생한다더니... ㅜ_ㅜ

 

 

 

Tip1 : tomcat 설치에 대한 정보는 아래 url 참조

https://zetawiki.com/wiki/%EC%9C%88%EB%8F%84%EC%9A%B0_%ED%86%B0%EC%BA%A38_%EC%84%A4%EC%B9%98

 

Tip2 : tomcat 실행 후 창이 사라질 때

1. cmd 명령어로 창을 연다.

2. 1번창에서 tomcat 설치폴더의 startup.bat와 동일한 폴더로 이동한다.

tomcat설치 폴더가 C:\apache-tomcat-8.5.41 라면 C:\apache-tomcat-8.5.41\bin 여기

3. 2번 위치에서 catalina run 이라고 입력하고 엔터

4. tomcat 창이 사라질 에러까지 표시하고 다시 명령어를 입력하라는 커서가 깜빡이는 상태로 돌아간다.

5. 4번 상태에서 마지막에 표시되는 에러를 확인

 

 

* 관련글

[Tomcat] 실행에러 : https://deonggi.tistory.com/76
[Tomcat] java.lang.IllegalArgumentException: The main resource set specified [FOLDER_NAME] ... : https://deonggi.tistory.com/77
[tomcat] war 배포하기, 가상 디렉토리 : https://deonggi.tistory.com/126

 

728x90
반응형

+ Recent posts