Maven ojdbc jar依赖项错误:包oracle.jdbc不存在 [英] Maven ojdbc jar dependency error: package oracle.jdbc does not exist

查看:279
本文介绍了Maven ojdbc jar依赖项错误:包oracle.jdbc不存在的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在尝试在我的Java EE6应用程序(类名VisualizerRepository.java)中使用jdbc连接时,我在nexus存储库中安装了jdbc驱动程序

Am trying to use jdbc connection in my Java EE6 application(class name VisualizerRepository.java), i have the jdbc driver in nexus repository

该类必须执行存储过程并打印该过程的结果.由于JPA 2.0不支持使用jdbc调用程序.

The class has to execute a stored procedure and print the result of the procedure. Since JPA 2.0 has no support on calling procedures am using jdbc.

包com.nfsmith.crm.data.repository;

package com.nfsmith.crm.data.repository;

import java.sql.CallableStatement;
import java.sql.Connection;
import java.sql.SQLException;
import javax.sql.DataSource;
import oracle.jdbc.OracleTypes;
import org.jboss.logging.Logger;

@Named
@ApplicationScoped
public class VisualizerRepository 
{
    DataSource datasource;
    Connection connection;
    CallableStatement statement;
    @PostConstruct
    public void initDBConnection()
    {
        InitialContext context;
        try 
        {
        context = new InitialContext();

        datasource = (DataSource) context.lookup("java:jboss/datasources/partmatchDatasource");
        connection = null;
        statement = null;
        connection = datasource.getConnection();

        } 
        catch (NamingException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }

    public void getJSonDataList()
    {
        try {
            statement = connection.prepareCall("{call crm.PKG_CRM_RELATIONSHIP.getOrgViewDataJason(?,?,?)}");

        int owner = 48156;
        statement.setInt(1, owner);
        int site = 10;
        statement.setInt(2, site);
        statement.registerOutParameter(3, OracleTypes.CURSOR);
        statement.execute();
    }
        catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        finally
        {           
            try {
                statement.close();
                connection.close();
            } catch (SQLException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
    }
}

当我进行构建时,看到编译错误,提示软件包oracle.jdbc不存在并且找不到符号

when I do the build am seeing the compilation error saying package oracle.jdbc does not exist and cannot find symbol

[ERROR] COMPILATION ERROR : 
[INFO] -------------------------------------------------------------
[ERROR] /C:/Users/rpalle/workspace/CRM/smith-crm-web/src/main/java/com/nfsmith/crm/data/repository/VisualizerRepository.java:[15,19] package oracle.jdbc does not exist
[ERROR] /C:/Users/rpalle/workspace/CRM/smith-crm-web/src/main/java/com/nfsmith/crm/data/repository/VisualizerRepository.java:[66,51] cannot find symbol
  symbol:   variable OracleTypes
  location: class com.nfsmith.crm.data.repository.VisualizerRepository
[INFO] 2 errors 
[INFO] -------------------------------------------------------------
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO] 
[INFO] Smith CRM ......................................... SUCCESS [0.823s]
[INFO] Smith CRM Web ..................................... FAILURE [4.775s]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 6.410s
[INFO] Finished at: Wed Aug 07 13:48:32 CDT 2013
[INFO] Final Memory: 36M/530M
[INFO] ------------------------------------------------------------------------
[WARNING] The requested profile "CRM_local" could not be activated because it does not exist.
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile (default-compile) on project smith-crm-web: Compilation failure: Compilation failure:
[ERROR] /C:/Users/rpalle/workspace/CRM/smith-crm-web/src/main/java/com/nfsmith/crm/data/repository/VisualizerRepository.java:[15,19] package oracle.jdbc does not exist
[ERROR] /C:/Users/rpalle/workspace/CRM/smith-crm-web/src/main/java/com/nfsmith/crm/data/repository/VisualizerRepository.java:[66,51] cannot find symbol
[ERROR] symbol:   variable OracleTypes
[ERROR] location: class com.nfsmith.crm.data.repository.VisualizerRepository
[ERROR] -> [Help 1]

推荐答案

ojdbc jar不在公共Maven存储库中. 您可以手动将jar添加到本地存储库.

The ojdbc jar is not in public maven repositories. You can add the jar to local repository manually.

从以下位置下载jar:

  • Oracle网站
  • 从oracle数据库服务器复制( {ORACLE_HOME} \ jdbc \ lib \ ojdbc6.jar )
  • oracle site
  • copy from your oracle database server ( {ORACLE_HOME}\jdbc\lib\ojdbc6.jar )

在您的存储库中安装

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

在您的pom中使用

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

这篇关于Maven ojdbc jar依赖项错误:包oracle.jdbc不存在的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆