Non riesco a convincere Maven a raggruppare il file ojdbc6.jar nel file war del mio progetto. Ho funzionato all'interno del file POM quando si specifica una dipendenza direttamente per gli strumenti di ibernazione. Ma non verrà fornito in bundle con il file war del progetto, e quindi il mio progetto non verrà eseguito su Tomcat.
Ho provato tutte le soluzioni che posso trovare in rete, comprese quelle specificate per questa domanda qui:
Trova il driver Oracle JDBC nel repository Maven
Più di recente, ho fatto quanto segue:
Scarica il file jar sulla mia macchina
Esegui il seguente comando per installare il jar nel mio repository locale:
mvn install:install-file -DgroupId=com.oracle -DartifactId=ojdbc6 -Dversion=11.2.0.3 -Dpackaging=jar -Dfile=ojdbc6.jar -DgeneratePom=true
(Ho provato anche tutti i tipi di varianti di quel comando.)
Infine, metto la dipendenza nel mio file pom:
<dependency> <groupId>com.oracle</groupId> <artifactId>ojdbc6</artifactId> <version>11.2.0.3</version> </dependency>
Eseguo una build pulita, ma non riesce:
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]
Perché non funziona? Sono pronto a lanciare costosi pezzi di computer attraverso la stanza. Questo ha fatto perdere così tanto tempo. (Grazie, Oracle. Quanto ti abbiamo pagato di nuovo?)
Forse perché sono su un Mac, forse?
mvn install:install-file
non ha funzionato. È necessario fornire la posizione assoluta ojdbc6.jar
o eseguire il comando dalla cartella che lo contiene. Il nome del file non è un problema. Potresti eseguire un -X
flag in modo da poter eseguire il debug delle informazioni.
install-file
? Maven dovrebbe dirti dove installa il file o se ci sono stati errori.
ojdbc6-11.2.0.3.jar
è disponibile nel tuo repository locale nella cartella corretta?