Parece que no puedo conseguir que Maven agrupe el archivo ojdbc6.jar en el archivo war de mi proyecto. Lo tengo funcionando dentro del archivo POM al especificar una dependencia directamente para las herramientas de Hibernate. Pero no se incluirá con el archivo war del proyecto y, por lo tanto, mi proyecto no se ejecutará en Tomcat.
He probado todas las soluciones que pude encontrar en la red, incluidas las especificadas para esta pregunta aquí:
Encuentre el controlador Oracle JDBC en el repositorio de Maven
Más recientemente, hice lo siguiente:
Descarga el archivo jar a mi máquina
Ejecute el siguiente comando para instalar el jar en mi repositorio local:
mvn install:install-file -DgroupId=com.oracle -DartifactId=ojdbc6 -Dversion=11.2.0.3 -Dpackaging=jar -Dfile=ojdbc6.jar -DgeneratePom=true
(También probé todo tipo de variantes de ese comando).
Finalmente, puse la dependencia en mi archivo pom:
<dependency> <groupId>com.oracle</groupId> <artifactId>ojdbc6</artifactId> <version>11.2.0.3</version> </dependency>
Ejecuto una compilación limpia, pero falla:
mvn -U clean package [INFO] Scanning for projects... [INFO] [INFO] ------------------------------------------------------------------------ [INFO] Building jazztwo 0.0.1 [INFO] ------------------------------------------------------------------------ Downloading: http://repo1.maven.org/maven2/com/oracle/ojdbc6/11.2.0.3/ojdbc6-11.2.0.3.jar [INFO] ------------------------------------------------------------------------ [INFO] BUILD FAILURE [INFO] ------------------------------------------------------------------------ [INFO] Total time: 0.700s [INFO] Finished at: Tue Mar 27 15:06:14 PDT 2012 [INFO] Final Memory: 3M/81M [INFO] ------------------------------------------------------------------------ [ERROR] Failed to execute goal on project jazztwo: Could not resolve dependencies for project edu.berkeley:jazztwo:war:0.0.1: Could not find artifact com.oracle:ojdbc6:jar:11.2.0.3 in central (http://repo1.maven.org/maven2) -> [Help 1]
¿Por qué no funciona esto? Estoy listo para tirar piezas costosas de computadora por la habitación. Esto ha hecho perder mucho tiempo. (Gracias, Oracle. ¿Cuánto le pagamos de nuevo?)
¿Es porque estoy en una Mac, quizás?
ojdbc6-11.2.0.3.jar
está disponible en su repositorio local en la carpeta correcta?mvn install:install-file
no ha funcionado. Debe dar la ubicación absolutaojdbc6.jar
o ejecutar el comando desde la carpeta que lo contiene. El nombre del archivo no es un problema. Puede ejecutar con una-X
bandera para poder depurar información.install-file
? Maven debería decirle dónde instala el archivo o si hubo algún error.Respuestas:
Es mejor agregar un nuevo repositorio de Maven (preferiblemente usando su propio artefacto) a su proyecto en lugar de instalarlo en su repositorio local.
Sintaxis de Maven:
Ejemplo de Griales:
fuente
Para cualquiera que lea esta publicación en el futuro, no es necesario que acceda al directorio donde está el jar. Aquí está lo que tú necesitas hacer -
Vaya a la carpeta de su proyecto desde donde puede ejecutar los comandos de maven (cuando haga un ls -ltr en esta carpeta, debería ver pom.xml)
Hacer esto -
Una vez hecho esto, puede agregar la dependencia en su pom.xml, algo como esto:
fuente
Maven > Update Project
. Entonces todo funcionó a la perfección. Este paso puede ser obvio, pero pensé que lo agregaría.Raghuram proporcionó la respuesta correcta en la sección de comentarios a mi pregunta original.
Por alguna razón, señalar "mvn install" a una ruta completa del archivo físico ojdbc6.jar no funcionó para mí. (O lo fallé repetidamente al ejecutar el comando, pero no se emitieron errores).
cd-ing en el directorio donde guardo ojdb6.jar y ejecutar el comando desde allí funcionó la primera vez.
Si a Raghuram le gustaría responder esta pregunta, aceptaré su respuesta en su lugar. ¡Gracias a todos!
fuente
para resolver el problema de ORACLE JAR con la aplicación Spring,
Oracle JDBC ojdbc6 Jar como dependencia de Maven
fuente
Primero debe descargar el jar particular del sitio de Oracle (ojdbc.jar versión 11.2.0.3)
si lo descarga en C: \ carpeta de archivos
vaya a ese directorio en el indicador de cmd y proporcione el siguiente comando. Instalará la dependencia. Luego puede construir su proyecto.
fuente
Después de ejecutar
verifique su carpeta de repositorio .m2 (/com/oracle/ojdbc6/11.2.0.3) para ver si existe ojdbc6.jar. De lo contrario, verifique la configuración de su repositorio maven en $ M2_HOME / conf / settings.xml
fuente
La siguiente configuración funcionó para mí. Consulte este enlace para obtener más detalles.
fuente
Dado que Oracle es el producto con licencia, existe un problema al agregar la dependencia de maven directamente. Para agregar cualquier versión de ojdbc.jar, los siguientes 2 pasos podrían ser suficientes.
Esto agregará la dependencia al repositorio local.
fuente
Seguí el siguiente comando que funcionó:
Después de la instalación, compruebe que jar esté instalado correctamente en su M2_repo.
fuente
Intenté usar la dependencia sin la etiqueta de versión y funcionó bien para mí.
fuente
Agregue la siguiente dependencia en pom.xml
fuente
Vaya a la unidad C-> usuario-> PcName-> busque .m2 y pegue el archivo jar ojdbc descargado allí, el servidor lo seleccionará automáticamente.
fuente
Los controladores Oracle JDBC y otros Jars complementarios están disponibles en Central Maven. Sugerimos utilizar las versiones oficiales de Oracle JDBC compatibles de 11.2.0.4, 12.2.0.2, 18.3.0.0, 19.3.0.0, 19.6.0.0 y 19.7.0.0. Están disponibles en Central Maven Repository . Consulte la Guía central de Maven para obtener más detalles.
Se recomienda utilizar la última versión. Consulte las preguntas frecuentes sobre la compatibilidad con JDK.
fuente