Java运行时类-无法在cmd提示符中cd
此程序将从java创建服务器证书,而无需打开命令promptat(至少手动),此代码将成功执行,但无论是在cded目录中,还是在cmd加载upc:\Documents and Settings\administrator的默认目录中,我都看不到我的文件server.jks。我更感兴趣的是在指定的目录中生成。帮助我修改代码以实现这一点Java运行时类-无法在cmd提示符中cd,java,runtime.exec,Java,Runtime.exec,此程序将从java创建服务器证书,而无需打开命令promptat(至少手动),此代码将成功执行,但无论是在cded目录中,还是在cmd加载upc:\Documents and Settings\administrator的默认目录中,我都看不到我的文件server.jks。我更感兴趣的是在指定的目录中生成。帮助我修改代码以实现这一点 public class SslKeytool { public void createServerCertificate(String dn, String
public class SslKeytool
{
public void createServerCertificate(String dn, String alias, String validity, String keystoreName, String keypass, String storepass, String drive, String path)
{
try
{
Runtime runtime = Runtime.getRuntime();
String result;
result = "keytool -genkeypair ";
result = result + "-alias " + alias + " ";
result = result + "-keyalg RSA -dname " + dn + " -validity " + validity + " -keypass" + keypass + " -keystorename " + keystoreName
+ " -storepass" + storepass;
runtime.exec("cmd " + drive + ":");
runtime.exec("cmd cd " + path);
runtime.exec("cmd " + result);
}
catch (Exception e)
{
System.out.println("Whoa! Something went wrong! please make sure that you read the API ");
e.printStackTrace();
}
}
public static void main(String[] args)
{
SslKeytool obj = new SslKeytool();
obj.createServerCertificate("CN=LCMS,OU=Software Solutions,O=Live Connections,L=Chennai,S=TamilNadu,C=Ind", "servercert", "365", "abc.jks", "lcmsauth"
, "lcmsauth", "f", "/keytest");
}
}
看看这篇文章,我知道如何创建一个自签名证书,但我想通过java和动态地创建它。你考虑过这篇文章吗?