java - 用于 Crystal Reports 的 Oracle JDBC 瘦驱动程序放在哪里?

标签 java jdbc crystal-reports

Oracle 的 jdbc 瘦驱动程序保存在哪里?我已经尝试过jre/lib/ext,但我的程序 Crystal Reports 一直说找不到它。我想我把它保存在错误的地方了。

如果我进入命令提示符并使用:

C:\TEMP>java oracle.jdbc.OracleDriver

Oracle 11.2.0.3.0 JDBC 4.0 compiled with JDK6 on Fri_Aug_26_08:19:15_PDT_2011
Default Connection Properties Resource
Wed Oct 12 14:02:05 EDT 2011

所以我知道它就在那里。

编辑:由于我无法让 CR 工作,我尝试了控制台应用程序,但它找不到驱动程序:

package javaapplication1;


public class JavaApplication1 {

 public static void main (String[] args) throws Exception
  {
   Class.forName ("oracle.jdbc.OracleDriver");

   Connection conn = DriverManager.getConnection
     ("jdbc:oracle:thin:@myserver:1521:mysid", "myid", "mypass");
                        // @//machineName:port/SID,   userid,  password
   try {
     Statement stmt = conn.createStatement();
     try {
       ResultSet rset = stmt.executeQuery("select BANNER from SYS.V_$VERSION");
       try {
         while (rset.next())
           System.out.println (rset.getString(1));   // Print col 1
       } 
       finally {
          try { rset.close(); } catch (Exception ignore) {}
       }
     } 
     finally {
       try { stmt.close(); } catch (Exception ignore) {}
     }
   } 
   finally {
     try { conn.close(); } catch (Exception ignore) {}
   }
  }
}

编辑:在我的计算机上,它位于此处:

C:\Program Files\SAP BusinessObjects\SAP BusinessObjects Enterprise XI 4.0\win32_x86\jdk\jre\lib\ext

最佳答案

只需将其放入应用程序的运行时类路径中即可。类路径覆盖的文件系统路径取决于您执行应用程序的方式。

根据您的问题历史记录,我发现您正在使用 JSP/Servlet,这意味着它是一个在应用程序服务器中运行的 WAR 文件风格的 Web 应用程序。在这种情况下,JAR 文件需要放入 web 应用自己的 /WEB-INF/lib 文件夹或应用服务器自己的 /lib 文件夹中。

如果它是一个普通的 Java 应用程序 .class 文件,其中包含一个由 java 命令执行的 main() 方法,那么您必须使用 -cp (-classpath) 参数来指定运行时类路径。它采用(分)冒号分隔的磁盘文件系统路径的集合。

如果它是 JAR 文件,则必须在 JAR 的 /META-INF/MANIFEST.MF 文件的 Class-Path 条目中指定它。这可以相对于 java -jar 命令的工作目录。

您确实应该避免将第 3 方库放入 JRE 的 /lib 文件夹中。这可能会给使用相同 JRE 的所有其他现有应用程序带来类路径问题。

关于java - 用于 Crystal Reports 的 Oracle JDBC 瘦驱动程序放在哪里?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7744329/

相关文章:

java - getIndexInfo 为复合主键返回错误的唯一列

java - 在 Ubuntu 14.04 LTS 上的 Tomcat 7 中找不到 MySQL JDBC 驱动程序

sql - Crystal 报表 SQL 表达式

java - Thread.sleep 不编译

java - 如何在 Java 中将 Map<?,?> 转换为类型化 Map?

java - Play 2.6.x Java 应用程序在开发模式下工作但在生产模式下失败

c# - 将多个对象设置为 Crystal 报表的数据源

asp.net - Crystal Reports Viewer 无法越过第 2 页

java - Objective C iOS 中文件上传图像文件代码

java - Microsoft Windows Server 2003 中的 JRE 问题