static public void printInfo(String str)你的java方法是static的,应该使用GetStaticMethodID来获取方法的ID
解决方案 »
- IO阻塞问问题
- 新手学习Java中,谈谈接口的一点理解,欢迎拍砖和指教
- 关于java.sql问一个问题,请大家帮忙,谢谢
- java 里的弹出试菜单的菜单项怎么不可以选!
- -------->>>>高分求教有趣的过滤规则的实现问题<<<<<<------
- Ireport里参数和变量有什么区别
- actionPerformed(ActionEvent e)方法使用问题
- java.sql.SQLException: [Microsoft][ODBC 驅動程式管理員] 找不到資料來源名稱且未指定預設的驅動程式
- 怎么评价一个程序员的代码质量呢?各位所在公司都有什么评价标准呢?
- Java程序接力,希望大家响应
- JAVA包的困惑(在线等待)
- 国庆节,散分,献给天下受苦受难的程序员.!
env->CallVoidMethod(obj, mid, env->NewStringUTF("Hello world!"));
这一行有什么错误吗?
native static public void invokeJavaMethod();
这个函数的代码贴出来看看,OK?
改成CallStaticVoildMethod试试看
另外,你能谈谈你对问题2:env->MonitorEnter(),这个方法是干什么用的?完整的用法该怎么写?的看法吗?
谢谢!
需要同步的代码在执行的时候应该锁定一个对象,在JNI代码中这样使用jint retcode = env->MonitorEnter(env, monObj);
if(retcode==0) {
/*需要线程同步的代码在这里
......
*/
env->MonitorExit(env, monObj)
}其中monObj是一个java对象。关于Monitor的信息,你可以参考java语言规范
http://java.sun.com/docs/books/jls/second_edition/html/memory.doc.html#28270
或许对你有一些帮助,因为我没有用过这个函数,所以还得你自己摸索。