JNI本地方法冻结在文件打开
问题描述:
Java代码的时候是在JNI本地方法冻结在文件打开
GraphJNIStuff.doMagic(); //my native method call
什么也没有发生...... ..except,该计划通过将返回冻结“调试运行”后
; (有没有更好的办法?)在C代码我发现有问题的位是
FILE* fp = fopen(filename, "r");
为什么?
我不知道什么信息将是在这种情况下有益的,但如果你需要什么请说出来
谢谢您的时间。
答
尝试使用相对路径而不是绝对路径。看看是否能工程:
FILE* fp = fopen("./examplepath/file", "r");
答
这应该不会引起任何问题,假设它使用正确。你确定文件存在/你有权限访问它吗?尝试验证fopen是否成功。 IE:
...fp = fopen...
if (fp == NULL) {
fprintf(stderr, "File could not be opened\n");
return -1;
} else {
fprintf(stderr, "File opened successfully\n");
return 0;
}
的fopen不返回函数的运行期间冻结 – 2013-02-18 08:57:00
权限是好的 - 我认为777D OK – 2013-02-18 09:06:46
我改变了绝对路径相对路径它停止冻结 – 2013-02-18 09:18:12