ResourceException: 클래스 이름이 잘못되었거나 MysqlDataSource에 대한 클래스 경로가 설정되지 않았습니다.

ResourceException: 클래스 이름이 잘못되었거나 MysqlDataSource에 대한 클래스 경로가 설정되지 않았습니다.

현재 내가 팔로우하고 있는 중 이 링크

해결하다

Caused by: javax.resource.ResourceException: Class name is wrong or classpath is not set for : com.mysql.cj.jdbc.MysqlDataSource

그래서 아래 스크린샷과 같이 glassfish 설치에 mysql-connector-java-5.1.46.jar을 추가했습니다.

Glassfish 설치 디렉토리

Glassfish를 다시 시작한 후에도 내 .war이 여전히 동일한 오류 메시지와 함께 배포되지 않습니다(아래 스택 추적).

Caused by: javax.resource.ResourceException: Class name is wrong or classpath is not set for : com.mysql.cj.jdbc.MysqlDataSource
    at com.sun.gjc.common.DataSourceObjectBuilder.getDataSourceObject(DataSourceObjectBuilder.java:278)
    at com.sun.gjc.common.DataSourceObjectBuilder.constructDataSourceObject(DataSourceObjectBuilder.java:117)
    at com.sun.gjc.spi.ManagedConnectionFactoryImpl.getDataSource(ManagedConnectionFactoryImpl.java:1383)
    at com.sun.gjc.spi.DSManagedConnectionFactory.getDataSource(DSManagedConnectionFactory.java:163)
    at com.sun.gjc.spi.DSManagedConnectionFactory.createManagedConnection(DSManagedConnectionFactory.java:102)
    at com.sun.enterprise.resource.allocator.LocalTxConnectorAllocator.createResource(LocalTxConnectorAllocator.java:87)

문제 해결 방법을 아는 사람이 있나요? 감사합니다.

답변1

내 pom.xml에 이 종속성을 추가하여 문제를 해결했습니다.

<dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>8.0.14</version>
        </dependency>

mysql-connector-java-8.0.14.jar을 /payara5/glassfish/domains/domain1/lib에 배치하는 대신.

관련 정보