问题描述
我在Linux下有一个已经用C语言写好,并编译生成的可执行的加密程序。现在我想在java程序中调用这个C程序。我现在是这样做的:用一个shell脚本运行这个加密程序,Java程序则负责调用shell脚本。Processrt=Runtime.getRuntime().exec("sh/opt/crypt");shell脚本在终端里可以运行,但是写在java程序里就不能运行了。请问,该怎么实现呢?
解决方案
解决方案二:
不要格成3道程序,不麻烦吗?你把c程序编译成.so。然后用JNA(java)去调用.so库
解决方案三:
那是不是java里面不能这么调用shell吗?我调用类似于“mkdir”之类的shell就能执行。
解决方案四:
引用1楼huxiweng的回复:
不要格成3道程序,不麻烦吗?你把c程序编译成.so。然后用JNA(java)去调用.so库
就是这样干,用native
解决方案五:
可以执行shell,好像是shell不能有stdin,stdout,stderr.
时间: 2024-10-23 09:00:26