我想用來自Java的參數調用python程序。但是我的輸出是空白。代碼在這里。
Python代碼在這里:
import sys
print(sys.argv[1])
Java代碼在這里:
public class PrintNumber{
public static void main(String[] args){
Process proc;
try {
proc = Runtime.getRuntime().exec("python ../pythonProgram/pythonProgram/PrintN.py 30");
BufferedReader in = new BufferedReader(new InputStreamReader(proc.getInputStream()));
String line = null;
while ((line = in.readLine()) != null) {
System.out.println(line);
}
in.close();
proc.waitFor();
} catch (IOException e) {
e.printStackTrace();
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
我想輸出30,有人可以告訴我錯誤在哪里嗎?
參考方案
您可以嘗試一下:
String command = "python /c start python ../pythonProgram/pythonProgram/PrintN.py";
int param = 30;
proc = Runtime.getRuntime().exec(command + param);
參考:Run Python script by Java
java runtime.freememory()與jconsole輸出不匹配 - java
我當時遇到一個奇怪的問題。我有多個JVM在運行,我需要獲取它們的內存使用情況詳細信息。當我通過Runtime.getFreeMemory()獲取詳細信息并將其與jconsole輸出進行比較時,會有很大的不同。可能是什么問題?使用Runtime.getFreeMemory()時我得到的信息不正確或ManagementFactory.getMemoryMXBea…Java:找到特定字符并獲取子字符串 - java
我有一個字符串4.9.14_05_29_16_21,我只需要獲取4.9。數字各不相同,所以我不能簡單地獲得此char數組的前三個元素。我必須找到最正確的.并將其子字符串化直到那里。我來自Python,因此我將展示Python的實現方法。def foobar(some_string): location = some_string.rfind('.&…Java:線程池如何將線程映射到可運行對象 - java
試圖繞過Java并發問題,并且很難理解線程池,線程以及它們正在執行的可運行“任務”之間的關系。如果我創建一個有10個線程的線程池,那么我是否必須將相同的任務傳遞給池中的每個線程,或者池化的線程實際上只是與任務無關的“工人無人機”可用于執行任何任務?無論哪種方式,Executor / ExecutorService如何將正確的任務分配給正確的線程? 參考方案 …JAVA:字節碼和二進制有什么區別? - java
java字節代碼(已編譯的語言,也稱為目標代碼)與機器代碼(當前計算機的本機代碼)之間有什么區別?我讀過一些書,他們將字節碼稱為二進制指令,但我不知道為什么。 參考方案 字節碼是獨立于平臺的,在Windows中運行的編譯器編譯的字節碼仍將在linux / unix / mac中運行。機器代碼是特定于平臺的,如果在Windows x86中編譯,則它將僅在Win…java:繼承 - java
有哪些替代繼承的方法? java大神給出的解決方案 有效的Java:偏重于繼承而不是繼承。 (這實際上也來自“四人幫”)。他提出的理由是,如果擴展類未明確設計為繼承,則繼承會引起很多不正常的副作用。例如,對super.someMethod()的任何調用都可以引導您通過未知代碼的意外路徑。取而代之的是,持有對本來應該擴展的類的引用,然后委托給它。這是與Eric…