我是JNI的新手.我成功编写了一些调用c语言编写的本机方法的程序.
现在我需要在初始化之后由本机代码端调用我的java代码.可能吗?到现在为止,我尝试了某种轮询技术.也就是说,我定期检查我的java代码中的本机代码参数,但是如果本机代码可以发送某种中断的方式,那么它可能更有效.可能吗?或者你能建议一个比投票更好的方法吗?
注意:当我搜索"使用JNI从C调用Java函数"时,我得到的所有答案都是
http://www.codeproject.com/Articles/22881/How-to-Call-Java-Functions-from-C-Using-JNI
这些例子不能解决我的情况.因为我的主程序是在java中,我要问的是:我在java代码中调用的本机函数(用c编写)是否可以在某些情况下调用其他一些java函数?是否可以在不使用上面提到的轮询技术的情况下管理它?
我正在尝试在我的java代码中执行linux命令.它需要更改某些目录的权限.
这是我的尝试:
String Cmd = "echo myPassword | sudo -S chmod 777 -R /home/somePath";
Runtime runtime = Runtime.getRuntime();
Process proc = runtime.exec(Cmd);
Run Code Online (Sandbox Code Playgroud)
String Cmd当我在终端中使用它时,保持的命令工作正常.但是当我在我的代码中使用它时,没有任何反应.没有错误或警告反馈可以帮助我理解我的错误.可能是什么问题?