gpt4 book ai didi

android - 缺少 JDBC 驱动程序 oracle 10g android 4.x

转载 作者:太空狗 更新时间:2023-10-29 12:49:13 24 4
gpt4 key购买 nike

我的运行项目有一些问题,但这个是最糟糕的:

    String url="jdbc:oracle:login/pwd@host:1521:etudom";
Connection co = null;

try {
Class.forName("oracle.jdbc.driver.OracleDriver");
co= DriverManager.getConnection(url);
popUp("Ok");
}
// Driver Oracle : Should never happen
catch (ClassNotFoundException e){
popUp("ERROR: Oracle Driver's missing");
//System.exit(1);
}
// Internet Connection Problem
catch (SQLException e) {
popUp("ERREOR : " + e.getMessage());
//System.exit(1);
}

这是 OJDBC14 的日志:

    01-12 22:37:14.876: D/dalvikvm(558): Not late-enabling CheckJNI (already on)
01-12 22:37:16.867: D/gralloc_goldfish(558): Emulator without GPU emulation detected.
01-12 22:38:01.996: E/dalvikvm(558): Could not find class 'javax.management.MBeanServer', referenced from method oracle.jdbc.driver.OracleDriver.registerMBeans
01-12 22:38:02.006: W/dalvikvm(558): VFY: unable to resolve check-cast 706 (Ljavax/management/MBeanServer;) in Loracle/jdbc/driver/OracleDriver;
01-12 22:38:02.006: D/dalvikvm(558): VFY: replacing opcode 0x1f at 0x002d
01-12 22:38:02.006: I/dalvikvm(558): Could not find method java.lang.management.ManagementFactory.getPlatformMBeanServer, referenced from method oracle.jdbc.driver.OracleDriver.registerMBeans
01-12 22:38:02.006: W/dalvikvm(558): VFY: unable to resolve static method 3503: Ljava/lang/management/ManagementFactory;.getPlatformMBeanServer ()Ljavax/management/MBeanServer;
01-12 22:38:02.016: D/dalvikvm(558): VFY: replacing opcode 0x71 at 0x0080
01-12 22:38:02.016: I/dalvikvm(558): Could not find method java.lang.management.ManagementFactory.getPlatformMBeanServer, referenced from method oracle.jdbc.driver.OracleDriver.registerMBeans
01-12 22:38:02.027: W/dalvikvm(558): VFY: unable to resolve static method 3503: Ljava/lang/management/ManagementFactory;.getPlatformMBeanServer ()Ljavax/management/MBeanServer;
01-12 22:38:02.027: D/dalvikvm(558): VFY: replacing opcode 0x71 at 0x0094
01-12 22:38:02.036: I/dalvikvm(558): Could not find method java.lang.management.ManagementFactory.getPlatformMBeanServer, referenced from method oracle.jdbc.driver.OracleDriver.registerMBeans
01-12 22:38:02.036: W/dalvikvm(558): VFY: unable to resolve static method 3503: Ljava/lang/management/ManagementFactory;.getPlatformMBeanServer ()Ljavax/management/MBeanServer;
01-12 22:38:02.036: D/dalvikvm(558): VFY: replacing opcode 0x71 at 0x00a8
01-12 22:38:02.036: I/dalvikvm(558): Could not find method java.lang.management.ManagementFactory.getPlatformMBeanServer, referenced from method oracle.jdbc.driver.OracleDriver.registerMBeans
01-12 22:38:02.036: W/dalvikvm(558): VFY: unable to resolve static method 3503: Ljava/lang/management/ManagementFactory;.getPlatformMBeanServer ()Ljavax/management/MBeanServer;
01-12 22:38:02.036: D/dalvikvm(558): VFY: replacing opcode 0x71 at 0x00bc
01-12 22:38:02.046: I/dalvikvm(558): Could not find method java.lang.management.ManagementFactory.getPlatformMBeanServer, referenced from method oracle.jdbc.driver.OracleDriver.registerMBeans
01-12 22:38:02.046: W/dalvikvm(558): VFY: unable to resolve static method 3503: Ljava/lang/management/ManagementFactory;.getPlatformMBeanServer ()Ljavax/management/MBeanServer;
01-12 22:38:02.046: D/dalvikvm(558): VFY: replacing opcode 0x71 at 0x00d1
01-12 22:38:02.046: W/dalvikvm(558): VFY: unable to resolve exception class 702 (Ljavax/management/JMException;)
01-12 22:38:02.046: W/dalvikvm(558): VFY: unable to resolve exception class 702 (Ljavax/management/JMException;)
01-12 22:38:02.046: W/dalvikvm(558): VFY: unable to resolve exception class 702 (Ljavax/management/JMException;)
01-12 22:38:02.046: W/dalvikvm(558): VFY: unable to find exception handler at addr 0xfa
01-12 22:38:02.046: W/dalvikvm(558): VFY: rejected Loracle/jdbc/driver/OracleDriver;.registerMBeans ()V
01-12 22:38:02.046: W/dalvikvm(558): VFY: rejecting opcode 0x0d at 0x00fa
01-12 22:38:02.046: W/dalvikvm(558): VFY: rejected Loracle/jdbc/driver/OracleDriver;.registerMBeans ()V
01-12 22:38:02.056: W/dalvikvm(558): Verifier rejected class Loracle/jdbc/driver/OracleDriver;

而且我总是遇到 ClassNotFound 异常,这让我抓狂!

我在命令行项目中使用了相同的驱动程序,它运行良好。

如果有人有任何线索那就太好了......

提前致谢,抱歉我的英语不好。

托马斯。

最佳答案

较新的 Oracle 驱动程序(至少 ojdbc6.jar,可能还有更早的驱动程序)在 Android 上不起作用。它们需要来自 Java 标准版 (Java SE) 的几个类,这些类在精简的 Android 平台上不可用。

更新:

错误信息很清楚:

Could not find class 'javax.management.MBeanServer'

这是 Android 上缺少的 Java SE 类。它可能想看看问题 Android Oracle Database JDBC6 .此用户能够在 Android 上使用 ojdbc14.jar

可能他/她使用 Oracle 客户端的方式不同,例如Class.forName("oracle.jdbc.OracleDriver"); 而不是 Class.forName("oracle.jdbc.driver.OracleDriver");。或者他/她使用了内部使用不同类的不同连接字符串。或者它是一个较旧的驱动程序,尽管也称为 ojdbc14.jar

无论如何,不​​能保证它永远有效。 Oracle Java 客户端是为 Java SE 而不是为 Android Java 构建的,Android Java 只包含那些通常在移动设备上使用的类。

关于android - 缺少 JDBC 驱动程序 oracle 10g android 4.x,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14295270/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com