web-dev-qa-db-ja.com

Maven依存関係としてのOracle JDBC ojdbc6 Jar

Mavenにojdbc6.jarファイルをプロジェクトのwarファイルにバンドルさせることはできません。 Hibernateツールの依存関係を直接指定する場合、POMファイル内で動作します。ただし、プロジェクトのwarファイルにバンドルされないため、Tomcatでプロジェクトを実行できません。

ここでこの質問に指定されているものを含め、ネット上で見つけることができるすべてのソリューションを試しました:

MavenリポジトリでOracle JDBCドライバーを見つける

最近では、次のことを行いました。

  1. Jarファイルをマシンにダウンロードします

  2. 次のコマンドを実行して、jarをローカルリポジトリにインストールします。

    mvn install:install-file -DgroupId=com.Oracle -DartifactId=ojdbc6 -Dversion=11.2.0.3 -Dpackaging=jar -Dfile=ojdbc6.jar -DgeneratePom=true
    

    (私もそのコマンドのすべての種類のバリエーションを試しました。)

  3. 最後に、pomファイルに依存関係を追加します。

    <dependency>
        <groupId>com.Oracle</groupId>
        <artifactId>ojdbc6</artifactId>
        <version>11.2.0.3</version>
    </dependency>
    
  4. クリーンビルドを実行しますが、失敗します。

    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]
    

なぜこれが機能しないのですか?部屋に高価なコンピューターの部品を投げる準備ができています。これは多くの時間を無駄にしました。 (オラクル、ありがとう。またいくら払った?)

おそらく私がMacを使っているからでしょうか?

91
Marvo

正解は、Raghuramが元の質問に対するコメントセクションで提供しました。

なんらかの理由で、「mvn install」が物理的なojdbc6.jarファイルのフルパスを指しているのはうまくいきませんでした。 (または、コマンドの実行中に一貫して繰り返しフラブアップしましたが、エラーは発行されませんでした。)

ojdb6.jarを保持しているディレクトリにcd-ingし、そこからコマンドを実行すると初めて動作しました。

Raghuramがこの質問に答えたい場合は、代わりに彼の答えを受け入れます。みんな、ありがとう!

22
Marvo

ローカルリポジトリにインストールするのではなく、プロジェクトに新しいMavenリポジトリを(できれば独自のアーティファクトリーを使用して)追加することをお勧めします。

Maven構文:

<dependency>
    <groupId>com.Oracle</groupId>
    <artifactId>ojdbc6</artifactId>
    <version>11.2.0.3</version>
</dependency>
... 
<repositories>
    <repository>
      <id>codelds</id>
      <url>https://code.lds.org/nexus/content/groups/main-repo</url>
    </repository>
  </repositories>

Grailsの例:

mavenRepo "https://code.lds.org/nexus/content/groups/main-repo"
build 'com.Oracle:ojdbc6:11.2.0.3'
131

将来この投稿を読む人は、jarが存在するディレクトリにcdする必要はありません。ここにあなたがする必要があるものがあります-

Mavenコマンドを実行できるプロジェクトフォルダーに移動します(このフォルダーでls -ltrを実行すると、pom.xmlが表示されます)

これを行う -

mvn install:install-file -DgroupId=com.Oracle -DartifactId=ojdbc6 -Dversion=11.2.0.3 -Dpackaging=jar -Dfile=<Path where the jar is, example downloads>/ojdbc6.jar -DgeneratePom=true

これが完了したら、pom.xmlに次のような依存関係を追加できます-

    <dependency>
        <groupId>com.Oracle</groupId>
        <artifactId>ojdbc6</artifactId>
        <version>11.2.0.3</version>
    </dependency>
38
rickygrimes

E:\WORK\EclipseL_Work\ro>mvn install:install-file -Dfile=C:\Users\xxxx\Downloa ds\lib\ojdbc6.jar -DgroupId=com.Oracle -DartifactId=ojdbc6 -Dversion=11.2.0 -Dpackaging=jar

springアプリケーションのOracle JAR問題を解決するには、

Maven依存関係としてのOracle JDBC ojdbc6 Jar

<dependency> <groupId>com.Oracle</groupId> <artifactId>ojdbc6</artifactId> <version>11.2.0</version> </dependency>

5
Sushil Gulhane

まず、特定のjarをOracleサイト(ojdbc.jarバージョン11.2.0.3)からダウンロードする必要があります

c:\ filefolderにダウンロードする場合

cmdプロンプトでそのディレクトリに移動し、以下のコマンドを入力します。依存関係がインストールされます。その後、プロジェクトをビルドできます。

mvn install:install-file -DgroupId=com.Oracle -DartifactId=ojdbc6 -Dpackaging=jar -Dversion=11.2.0.4.0 -Dfile=ojdbc6.jar -DgeneratePom=true
5
shermi

実行後

mvn install:install-file -DgroupId=com.Oracle -DartifactId=ojdbc6 -Dversion=11.2.0.3 -Dpackaging=jar -Dfile=ojdbc6.jar -DgeneratePom=true

.m2リポジトリフォルダー(/com/Oracle/ojdbc6/11.2.0.3)をチェックして、ojdbc6.jarが存在するかどうかを確認します。 $ M2_HOME/conf/settings.xmlでmavenリポジトリーの設定を確認しない場合

2

以下の設定は私のために働いた。詳細は link をご覧ください。

<dependency>
 <groupId>com.Oracle.jdbc</groupId>
 <artifactId>ojdbc7</artifactId>
 <version>12.1.0.2</version>
</dependency>
2
Barani r

私はそれが働いた以下のコマンドに従いました:

mvn install:install-file -Dfile=E:\Java\Spring\ojdbc14-10.2.0.4.0.jar\ojdbc14-10.2.0.4.0.jar -DgroupId=com.Oracle -DartifactId=ojdbc14 -Dversion=10.2.0.4.0 -Dpackaging=jar

インストール後、jarがM2_repoに正しくインストールされていることを確認します。

1
kuser699

Pom.xmlに次の依存関係を追加します

<dependency>
    <groupId>com.Oracle</groupId>
    <artifactId>Oracle</artifactId>
    <version>10.2.0.2.0</version>
</dependency>
0
Kiran P Fegade