0

我的Java类是这样的;

import oracle.sqlj.runtime.Oracle;
import sqlj.runtime.ref.DefaultContext;

class Test
{

  public static void main (String args[]) throws SQLException

  {

    Connection conn=null;;
    PreparedStatement ps=null;

   Oracle.connect(TestInstallCreateTable.class, "connect.properties");

 conn = DefaultContext.getDefaultContext().getConnection();

 try {
    ps = conn.prepareStatement("DROP TABLE SALES");

    ps.executeUpdate();

 } catch (SQLException e) {
         ;             
 }

}
}

我看到带有 jdk7 的 javac 出现以下错误。

ld.so.1: javac: fatal: relocation error: file 
/jdk7/jre/lib/sparc/libzip.so: symbol JNU_GetStringPlatformChars: referenced symbol not found

为什么会发生?

4

1 回答 1

2

你在你的机器上安装了 ia32-libs 吗?在没有安装该库的 amd64 linux 实例上尝试以 32 位模式运行 64 位 java 时,我看到了类似的错误。

安装那个库(在我的情况下是apt-get install ia32-libs在 debian 上)解决了这个问题。

于 2013-12-20T13:23:10.663 回答