Resolviendo ClassNotFoundException del controlador JDBC DM en aplicaciones Spring Boot

En proyectos Spring Boot, el error java.lang.ClassNotFoundException: dm.jdbc.driver.DmDriver indica que el controlador JDBC de la base de datos DM no se encuentra en el classpath. Esto ocurre comúnmente cuando las dependencias no están configuradas correctamente o el archivo JAR está ausente. A continuación, se describe una guía para solucionar este problema.

Configuración de dependencias del controlador

Para incluir el controlador JDBC de DM en el proyecto, se deben agregar las dependencias apropiadas según la herramienta de construcción utilizada.

Usando Maven

En el archivo pom.xml, se debe insertar la siguienet dependencia dentro de la sección de dependencias. Asegúrese de verificar la versión compatible con su base de datos DM:

<dependency>
    <groupId>com.dameng</groupId>
    <artifactId>dm-jdbc-driver</artifactId>
    <version>8.1.3</version> <!-- Reemplazar con la versión requerida -->
</dependency>

Usando Gradle

Para proyectos con Gradle, incluya la dependencia en el archivo build.gradle:

dependencies {
    implementation 'com.dameng:dm-jdbc-driver:8.1.3' // Ajustar versión según necesidad
}

Inclusión manual del archivo JAR

Si el controlador no está disponible en repositorios públicos, puede descargar el JAR manualmente. Coloque el archivo dm-jdbc-driver.jar en una carpeta local, por ejemplo, lib/. Luego, configure el proyecto para incluirlo. En Maven, modifique la dependencia como sigue:

<dependency>
    <groupId>com.dameng</groupId>
    <artifactId>dm-jdbc-driver</artifactId>
    <version>8.1.3</version>
    <scope>system</scope>
    <systemPath>${project.basedir}/lib/dm-jdbc-driver.jar</systemPath>
</dependency>

Establecimiento de la fuente de datos

Una vez que el controlador está en el classpaht, se debe configurar la conexión a la base de datos DM en los archivos de propiedades de Spring Boot. A continuación, se muestran ejemplos para ambos formatos.

Archivo application.properties

# Configuración de conexión a DM
spring.datasource.url=jdbc:dm://127.0.0.1:5237/MI_BASE_DATOS
spring.datasource.username=usuario_ejemplo
spring.datasource.password=contraseña_segura
spring.datasource.driver-class-name=dm.jdbc.driver.DmDriver

Archivo application.yml

spring:
  datasource:
    url: jdbc:dm://127.0.0.1:5237/MI_BASE_DATOS
    username: usuario_ejemplo
    password: contraseña_segura
    driver-class-name: dm.jdbc.driver.DmDriver

Reemplace los valores de ejemplo como la URL, usuario y contraseña con los correspondientes a su entorno de base de datos DM.

Verificación del controlador

Para confirmar que el controlador está presente, inspeccione el contenido del archivo JAR. Utilice herramientas como jar tf o un visor de archivos para buscar la clase dm.jdbc.driver.DmDriver. Esto garantiza que el archivo no esté corrupto o incompleto.

Al seguir estos pasos, el error de ClassNotFoundException se resolverá, permitiendo que la aplicación Spring Boot se conecte adecuadamente a la base de datos DM.

Etiquetas: spring-boot dm-jdbc classnotfoundexception jdbc-driver database-configuration

Publicado el 7-24 08:35