[SPRING] Java 9 : java.lang.ClassNotFoundException : Spring Boot 응용 프로그램의 java.sql.SQLException
SPRINGJava 9 : java.lang.ClassNotFoundException : Spring Boot 응용 프로그램의 java.sql.SQLException
자바 9로 스프링 부트 애플리케이션을 만들었습니다. ... sourceCompatibility = 9 targetCompatibility = 9 ... 다음과 같이 시작했다 : java --module-path lib -m my.app. ...
Caused by: java.lang.NoClassDefFoundError: java/sql/SQLException
at spring.beans@5.0.2.RELEASE/org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:161)
at spring.boot@2.0.0.M7/org.springframework.boot.SpringApplication.createSpringFactoriesInstances(SpringApplication.java:436)
... 5 more
Caused by: java.lang.ClassNotFoundException: java.sql.SQLException
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(Unknown Source)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(Unknown Source)
at java.base/java.lang.ClassLoader.loadClass(Unknown Source)
... 7 more
참고 : --module-path 대신 classpath를 사용하여 응용 프로그램을 성공적으로 시작했습니다.
편집 : 조언 해 주셔서 감사합니다! 마지막으로 응용 프로그램을 시작하기위한 "마법 믹스"를 발견했습니다. 내가 lib에서 javax.transaction-api-1.2.jar을 제거하고 클래스 경로에 배치하여 패키지 (javax.transaction.xa)를 제거하여 모듈 java.sql과 javax.transaction.api 간의 충돌을 분할했습니다.
java --module-path lib --add-modules java.sql,java.instrument,java.xml.bind -cp javax.transaction-api-1.2.jar -m my.app
해결법
from https://stackoverflow.com/questions/47852809/java-9-java-lang-classnotfoundexception-java-sql-sqlexception-in-spring-boot-a by cc-by-sa and MIT license
'SPRING' 카테고리의 다른 글
[SPRING] 봄 부팅 메모리 소비가 -Xmx 옵션을 초과하여 증가합니다. (0) | 2019.04.09 |
---|---|
[SPRING] 소셜 공급자를 사용하여 성공한 로그인 후 리디렉션 URL을 설정하는 방법 (0) | 2019.04.09 |
[SPRING] Spring 컨텍스트가 두 번로드되는 이유는 무엇입니까? (0) | 2019.04.09 |
[SPRING] JSON - Spring MVC : spring MVC 컨트롤러에 json 데이터를 게시하는 방법 (0) | 2019.04.09 |
[SPRING] Spring Controller에서 FORM / POST 매개 변수를 가져 오는 방법은 무엇입니까? (0) | 2019.04.09 |