這個是自己做項目的一個需求,之前使用jython來在java中調用python指令碼,但是當python引入的第三方的類庫之後,jython中是不存在這種包的,就會造成的結果是,不能使用 import fontforge 是沒有定義的。
下面是直接使用java的一個函數,Runtime類來進行python指令碼的調用。下面對對應的java程式
import java.io.IOException;public class TestJava {public static void main(String[] args) throws IOException{// 使用用Ping命令 //Process ee = Runtime.getRuntime().exec( //"cmd.exe /c start ping 10.5.2.19");/*try{Runtime rt = Runtime.getRuntime();//System.out.println("start!");Process proc = Runtime.getRuntime().exec("cmdpython c:\\Python32\\program\\outfile.py");proc.waitFor(); //waiting the completion of the command//System.out.println("end");}catch (Exception e){e.printStackTrace();}*///ok 這個是可以使用的 try{Runtime rt = Runtime.getRuntime();System.out.println("start");Process proc = Runtime.getRuntime().exec("python outfile.py");proc.waitFor();System.out.println("end");} catch (Exception e){e.printStackTrace();}}//main}
上面要求outfile.py是在java工程的根目錄下的。
未完,待續,現在是在windows下的,後面是要測試在ubuntu下的使用,以及如何調用運算的結果的方面的事情。