打电话与JNI argumenrs Java方法(call java methods with ar

2019-10-30 11:45发布

我工作的JNI程序,我无法从我的C ++程序调用Java方法。

Java方法的代码片段是在这里

public static void getTables(Connection conn) throws Exception {

    String TABLE_NAME = "TABLE_NAME";
    String TABLE_SCHEMA = "TABLE_SCHEM";
    String[] TABLE_TYPES = {"TABLE"};
    DatabaseMetaData dbmd = conn.getMetaData();

    ResultSet tables = dbmd.getTables(null, null, null, TABLE_TYPES);
    while (tables.next()) {
      System.out.println(tables.getString(TABLE_NAME));
          System.out.println(tables.getString(TABLE_SCHEMA));
    }
  }

我想打电话从C ++程序这个Java方法。

我能够调用的主要方法,该代码是

midMain       = env->GetStaticMethodID(clsH, "main", "([Ljava/lang/String;)V");

我想打电话的getTables方法是这样的。 请帮我解决这个问题。

Answer 1:

请参阅https://stackoverflow.com/a/14872927/755804和大概就是这些了: https://stackoverflow.com/a/14021142/755804 https://stackoverflow.com/a/15941319/755804 https://开头计算器的.com /一个/七十五万五千八百零四分之二千一百一十万九千九百四

有调用静态和非静态方法之间的差一些,但并不多。 我建议你开始与一些作品,并逐步改变你想要什么。



文章来源: call java methods with argumenrs in JNI