Spring MVC app在这样的文件中有Oracle和Hibernate属性(persistence-oracle.properties):
# jdbc.X
jdbc.driverClassName=oracle.jdbc.driver.OracleDriver
jdbc.url=[Database URL]
jdbc.user=[Username]
jdbc.pass=[Password]
# hibernate.X
hibernate.dialect=org.hibernate.dialect.Oracle10gDialect
hibernate.show_sql=true
#hibernate.hbm2ddl.auto=create-drop
虽然测试显示应用程序可以连接并查询数据库并获取数据,但当我尝试使用maven打包时,我收到此错误:
Cannot load JDBC driver class 'oracle.jdbc.driver.OracleDriver'
java.lang.ClassNotFoundException: oracle.jdbc.driver.OracleDriver
属性在此属性文件中而不是hibernate.cfg.xml的原因是因为配置是通过Spring Java Configuration完成的,类似于step 3 here
为什么Maven在Spring可以找不到驱动程序?
Edit1:Oracle依赖
<dependency>
<groupId>com.oracle</groupId>
<artifactId>ojdbc6</artifactId>
<version>11.2.0.3</version>
</dependency>
答案 0 :(得分:1)
您是否必须在构建路径中提及oracle驱动程序?如果是这样,我认为这可能是许可证问题,请参阅此处Find Oracle JDBC driver in Maven repository
答案 1 :(得分:0)
你在mvnrepo中看到的ojdbc6依赖是不确切的。应该为ojdbc6 verison依赖项添加集合标记,以便将jars转储到您的路径中。