如何从java应用程序运行openssl命令
我使用以下代码从Java应用程序运行Windows命令。我尝试了一些windows命令,例如:如何从java应用程序运行openssl命令,java,sockets,network-programming,openssl,Java,Sockets,Network Programming,Openssl,我使用以下代码从Java应用程序运行Windows命令。我尝试了一些windows命令,例如:ver,它可以与我一起使用。我需要在应用程序中使用的命令是openssl。我在Windows上工作,所以我下载了适用于Windows的openssl。我在命令行窗口中尝试了以下命令,效果很好。但是,当我从Java应用程序中尝试它时,我得到的一切都完成了。我没有得到输出。有人能帮忙吗 代码如下: import java.io.*; public class DebianChecker { publ
ver
,它可以与我一起使用。我需要在应用程序中使用的命令是openssl
。我在Windows上工作,所以我下载了适用于Windows的openssl
。我在命令行窗口中尝试了以下命令,效果很好。但是,当我从Java应用程序中尝试它时,我得到的一切都完成了。我没有得到输出。有人能帮忙吗
代码如下:
import java.io.*;
public class DebianChecker
{
public static void main(String args[])
{
try
{
Process p=Runtime.getRuntime().exec("cmd /c openssl s_client -connect
gmail.com:443");
p.waitFor();
BufferedReader reader=new BufferedReader(new InputStreamReader(p.getInputStream()));
String line=reader.readLine();
while(line!=null)
{
System.out.println(line);
line=reader.readLine();
}
}
catch(IOException e1) {}
catch(InterruptedException e2) {}
System.out.println("Done");
}
}
试着把线移走
p、 waitFor()
waitFor()等待进程结束。因此,当您获得InputStream时,该过程已经完成