Java 找不到com.oracle:ojdbc14:jar:10.4.4

Java 找不到com.oracle:ojdbc14:jar:10.4.4,java,spring,hibernate,Java,Spring,Hibernate,我正在尝试运行spring mvc和hibernate项目,出现以下错误: 未能在project spring mvc磁贴上执行目标hibernate:无法解析project com.sprin.mvc:spring mvc磁贴的依赖项hibernate:war:0.0.1-SNAPSHOT:未能找到com.oracle:ojdbc14:jar:10.4.4中的已缓存在本地存储库中,在经过central的更新间隔或强制更新之前,不会重新尝试解析->[帮助1] 下面是我的pom.xml文件: &l

我正在尝试运行spring mvc和hibernate项目,出现以下错误:

未能在project spring mvc磁贴上执行目标hibernate:无法解析project com.sprin.mvc:spring mvc磁贴的依赖项hibernate:war:0.0.1-SNAPSHOT:未能找到com.oracle:ojdbc14:jar:10.4.4中的已缓存在本地存储库中,在经过central的更新间隔或强制更新之前,不会重新尝试解析->[帮助1]

下面是我的pom.xml文件:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.sprin.mvc</groupId>
  <artifactId>spring-mvc-tiles-hibernate</artifactId>
  <packaging>war</packaging>
  <version>0.0.1-SNAPSHOT</version>
  <name>spring-mvc-tiles-hibernate</name>
  <url>http://maven.apache.org</url>
  <build>
        <finalName>spring-mvc-tiles-hibernate</finalName>
        <!-- <plugins> <plugin> <artifactId>maven-war-plugin</artifactId> <version>2.4</version> 
            <configuration> In version 2.1-alpha-1, this was incorrectly named warSourceExcludes 
            <packagingExcludes>WEB-INF/lib/*.jar</packagingExcludes> <archive> <manifest> 
            <addClasspath>true</addClasspath> <classpathPrefix>C:/Users/hunaid.husain/workspace/rest-web-app/target/rest-web-app/WEB-INF/lib/</classpathPrefix> 
            </manifest> </archive> </configuration> </plugin> </plugins> -->
    </build>
    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <spring.version>3.2.2.RELEASE</spring.version>
        <java.version>1.6</java.version>
        <servlet-api.version>2.5.0</servlet-api.version>
        <dwr.version>3.0.0-rc3-SNAPSHOT</dwr.version>
        <tiles-version>2.2.2</tiles-version>
        <slf4j.version>1.6.1</slf4j.version>
        <jackson.version>2.0.4</jackson.version>
    </properties>
    <dependencies>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>3.8.1</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-web</artifactId>
            <version>${spring.version}</version>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-webmvc</artifactId>
            <version>${spring.version}</version>
        </dependency>
        <dependency>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
            <version>1.1.1</version>
        </dependency>
        <dependency>
            <groupId>log4j</groupId>
            <artifactId>log4j</artifactId>
            <version>1.2.16</version>
        </dependency>
        <!-- JSTL -->
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>jstl</artifactId>
            <version>1.1.2</version>
        </dependency>

        <dependency>
            <groupId>taglibs</groupId>
            <artifactId>standard</artifactId>
            <version>1.1.2</version>
        </dependency>

        <!-- for compile only, your container should have this -->
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>servlet-api</artifactId>
            <version>2.5</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.11</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>commons-codec</groupId>
            <artifactId>commons-codec</artifactId>
            <version>1.8</version>
        </dependency>

        <!-- Hibernate dependencies -->
        <dependency>
            <groupId>org.hibernate</groupId>
            <artifactId>hibernate-core</artifactId>
            <version>4.1.4.Final</version>
        </dependency>
        <dependency>
            <groupId>org.hibernate.common</groupId>
            <artifactId>hibernate-commons-annotations</artifactId>
            <version>4.0.1.Final</version>
        </dependency>
        <dependency>
            <groupId>org.hibernate.javax.persistence</groupId>
            <artifactId>hibernate-jpa-2.0-api</artifactId>
            <version>1.0.1.Final</version>
        </dependency>
        <dependency>
            <groupId>org.hibernate</groupId>
            <artifactId>hibernate-entitymanager</artifactId>
            <version>4.0.0.Final</version>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-jdbc</artifactId>
            <version>${spring.version}</version>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-orm</artifactId>
            <version>${spring.version}</version>
        </dependency>
        <dependency>
            <groupId>com.oracle</groupId>
            <artifactId>ojdbc</artifactId>
            <version>10.2.0.4.0</version>
        </dependency>
        <dependency>
            <groupId>commons-beanutils</groupId>
            <artifactId>commons-beanutils</artifactId>
            <version>1.8.3</version>
        </dependency>
        <dependency>
            <groupId>commons-configuration</groupId>
            <artifactId>commons-configuration</artifactId>
            <version>1.7</version>
        </dependency>
        <dependency>
            <groupId>commons-dbcp</groupId>
            <artifactId>commons-dbcp</artifactId>
            <version>1.4</version>
        </dependency>

        <dependency>
            <groupId>org.apache.tiles</groupId>
            <artifactId>tiles-core</artifactId>
            <version>${tiles-version}</version>
        </dependency>
        <dependency>
            <groupId>org.apache.tiles</groupId>
            <artifactId>tiles-jsp</artifactId>
            <version>${tiles-version}</version>
        </dependency>
        <dependency>
            <groupId>org.apache.tiles</groupId>
            <artifactId>tiles-api</artifactId>
            <version>${tiles-version}</version>
        </dependency>
        <dependency>
            <groupId>org.apache.tiles</groupId>
            <artifactId>tiles-servlet</artifactId>
            <version>${tiles-version}</version>
        </dependency>
        <dependency>
            <groupId>org.apache.tiles</groupId>
            <artifactId>tiles-template</artifactId>
            <version>${tiles-version}</version>
        </dependency>
                <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-log4j12</artifactId>
            <version>${slf4j.version}</version>
        </dependency>
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>jcl-over-slf4j</artifactId>
            <version>${slf4j.version}</version>
        </dependency>
        <dependency>
            <groupId>commons-beanutils</groupId>
            <artifactId>commons-beanutils</artifactId>
            <version>1.8.3</version>
        </dependency>
                 <!-- Json via Jackson 2.0 -->
        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-core</artifactId>
            <version>${jackson.version}</version>
        </dependency>
        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-databind</artifactId>
            <version>${jackson.version}</version>
        </dependency>
    <dependency>
      <groupId>displaytag</groupId>
      <artifactId>displaytag</artifactId>
      <version>1.1</version>
    </dependency>
    <dependency>
            <groupId>org.directwebremoting</groupId>
            <artifactId>dwr</artifactId>
            <version>${dwr.version}</version>
    </dependency>
    <dependency>
     <groupId>com.googlecode.json-simple</groupId>
     <artifactId>json-simple</artifactId>
     <version>1.1</version>
     </dependency> 


    </dependencies>
</project>

4.0.0
com.sprin.mvc
spring-mvc-tiles-hibernate
战争
0.0.1-快照
spring-mvc-tiles-hibernate
http://maven.apache.org
spring-mvc-tiles-hibernate
UTF-8
3.2.2.1发布
1.6
2.5.0
3.0.0-rc3-SNAPSHOT
2.2.2
1.6.1
2.0.4
朱尼特
朱尼特
3.8.1
测试
org.springframework
弹簧网
${spring.version}
org.springframework
SpringWebMVC
${spring.version}
公用记录
公用记录
1.1.1
log4j
log4j
1.2.16
javax.servlet
jstl
1.1.2
塔格利布
标准
1.1.2
javax.servlet
servlet api
2.5
假如
朱尼特
朱尼特
4.11
测试
通用编解码器
通用编解码器
1.8
org.hibernate
冬眠核心
4.1.4.最终版本
org.hibernate.common
hibernate commons注释
4.0.1.最终版本
org.hibernate.javax.persistence
hibernate-jpa-2.0-api
1.0.1.最终版本
org.hibernate
休眠实体管理器
4.0.0.1决赛
org.springframework
SpringJDBC
${spring.version}
org.springframework
春季甲虫
${spring.version}
com.oracle
ojdbc
10.2.0.4.0
公地小海狸
公地小海狸
1.8.3
共用配置
共用配置
1.7
公共dbcp
公共dbcp
1.4
org.apache.tiles
砖芯
${tiles version}
org.apache.tiles
平铺jsp
${tiles version}
org.apache.tiles
瓷砖api
${tiles version}
org.apache.tiles
瓦片servlet
${tiles version}
org.apache.tiles
瓷砖模板
${tiles version}
org.slf4j
slf4j-log4j12
${slf4j.version}
org.slf4j
jcl-over-slf4j
${slf4j.version}
公地小海狸
公地小海狸
1.8.3
com.fasterxml.jackson.core
杰克逊核心
${jackson.version}
com.fasterxml.jackson.core
杰克逊数据绑定
${jackson.version}
显示标签
显示标签
1.1
org.directwebremoting
dwr
${dwr.version}
com.googlecode.json-simple
简单json
1.1

我最近的处境也很相似。 Oracle不向maven提供物理上的驱动程序包,但maven的存储库中有驱动程序工件。因此,当您在pom.xml中设置依赖项时,实际上只加载oracle许可证文件

我的解决方案是:

  • Pom依赖性

    <dependency>
    <groupId>com.oracle</groupId>
    <artifactId>ojdbc</artifactId>
    <version>10.2.0.4.0</version>
    </dependency>
    
    此文件夹将包含一些文件,但没有jar

  • 从Oracle站点(10.2.0.4.0版)手动下载驱动程序:

  • 通过运行将驱动程序手动安装到maven中

     mvn install:install-file -Dfile={Path/to/your/ojdbc.jar} -DgroupId=com.oracle -DartifactId=ojdbc -Dversion=10.2.0.4.0 -Dpackaging=jar
    

  • 其中,命令中的com.oracleojdbc必须与maven repo路径元素匹配…\.m2\repository\comoracle\ojdbc\10.2.0.4.0\

    我认为,您必须检查您的依赖项,因为错误显示的版本与pom.xml中的版本不同。您在pom.xml中有以下内容:

    <dependency>
       <groupId>com.oracle</groupId>
       <artifactId>ojdbc</artifactId>
       <version>10.2.0.4.0</version>
    </dependency>
    
    
    com.oracle
    ojdbc
    10.2.0.4.0
    
    错误显示版本
    10.4.4
    ,可能您有另一个项目作为依赖项,它有ojdbc 10.4.4

    我希望这些信息对你有帮助


    祝你好运。

    在IDE中的项目上单击鼠标右键,找到可以设置构建路径/库的位置,并且必须在项目属性中手动添加.jar文件

    顺便说一句,您正在使用非常旧的spring和junit


    到目前为止,您尝试了什么?谷歌在这方面给了你什么?@Aditi请从本地存储库中删除该jar的缓存副本。您可以将pom文件与您的问题一起附加。Oracle没有将其驱动程序放在maven central中,因此您必须在您自己的nexus或本地或您自己的libs中提供这些驱动程序。我更改了ojdbc jar的不同版本,并尝试通过maven安装来执行它,但它不起作用。我还将commons dbcp的版本更改为1.4,因此错误得以解决。你能推荐一下其他的吗
    <dependency>
       <groupId>com.oracle</groupId>
       <artifactId>ojdbc</artifactId>
       <version>10.2.0.4.0</version>
    </dependency>