Java 通过Python执行外部软件
我有一个通过终端正常执行的Java程序。但是,当我试图通过另一个python代码,更具体地说,通过os.system()或subprocess.run()函数来执行它时,我会遇到以下错误:Java 通过Python执行外部软件,java,python,jnetpcap,Java,Python,Jnetpcap,我有一个通过终端正常执行的Java程序。但是,当我试图通过另一个python代码,更具体地说,通过os.system()或subprocess.run()函数来执行它时,我会遇到以下错误: Exception in thread "main" java.lang.UnsatisfiedLinkError: com.slytechs.library.NativeLibrary.dlopen(Ljava/lang/String;)J at com.slytechs.library.NativeLib
Exception in thread "main" java.lang.UnsatisfiedLinkError: com.slytechs.library.NativeLibrary.dlopen(Ljava/lang/String;)J
at com.slytechs.library.NativeLibrary.dlopen(Native Method)
at com.slytechs.library.NativeLibrary.<init>(Unknown Source)
at com.slytechs.library.JNILibrary.<init>(Unknown Source)
at com.slytechs.library.JNILibrary.loadLibrary(Unknown Source)
at com.slytechs.library.JNILibrary.register(Unknown Source)
at com.slytechs.library.JNILibrary.register(Unknown Source)
at com.slytechs.library.JNILibrary.register(Unknown Source)
at org.jnetpcap.Pcap.<clinit>(Unknown Source)
at cic.cs.unb.ca.jnetpcap.PacketReader.config(PacketReader.java:58)
at cic.cs.unb.ca.jnetpcap.PacketReader.<init>(PacketReader.java:52)
at cic.cs.unb.ca.ifm.Cmd.readPcapFile(Cmd.java:128)
at cic.cs.unb.ca.ifm.Cmd.readPcapDir(Cmd.java:100)
at cic.cs.unb.ca.ifm.Cmd.main(Cmd.java:73)
TCP/IP Features were extracted to: /CICFlowMeter/bin/
java程序名为cfm,它以两个参数作为输入,特别是两个目录的路径。cfm是指:
根据上面GitHub页面提供的说明,为了执行CICF,我只需要安装libpcap dev库
有什么想法吗?您是如何通过Python执行Java代码的?Java程序使用的库在通过Python调用时无法正确加载。您是如何通过Python加载程序的,这是我们需要知道才能提供帮助的。@FelipeFaria非常感谢您的评论,我已经根据您的评论编辑了我的问题。您是否试图通过Python执行Java代码?Java程序使用的库在通过Python调用时无法正确加载。您如何通过Python加载程序是我们需要知道的,以便能够提供帮助。@FelipeFaria非常感谢您的评论,我已经根据您的评论编辑了我的问题
subprocess.run( ["/home/user/PycharmProjects/untitled/CICFlowMeter/bin/cfm", "/home/user/PycharmProjects/untitled/CICFlowMeter/bin/", "/home/user/PycharmProjects/untitled/CICFlowMeter/bin/"])