如何通过java类运行以下CMD代码?
我正在通过cmd行接口命令启动Fuseki服务器。循序渐进如何通过java类运行以下CMD代码?,java,cmd,fuseki,Java,Cmd,Fuseki,我正在通过cmd行接口命令启动Fuseki服务器。循序渐进 ![My CMD working code] 如何在不打开任何CMD行接口的情况下通过java类运行上述代码? 许多答案都提供了下面的代码 Process child = Runtime.getRuntime().exec(command); 但我不明白我应该如何将我的上述东西应用到这里 最新问题 公开课考试{ public static void main(String[] args) { // TOD
![My CMD working code]
如何在不打开任何CMD行接口的情况下通过java类运行上述代码?
许多答案都提供了下面的代码
Process child = Runtime.getRuntime().exec(command);
但我不明白我应该如何将我的上述东西应用到这里
最新问题
公开课考试{
public static void main(String[] args) {
// TODO Auto-generated method stub
String[] command = { "fuseki-server", "--update", "--mem", "/ds" };
File directory = new File("D:\\jena-fuseki-1.0.1");
ProcessBuilder pb = new ProcessBuilder(command);
pb.directory(directory);
try {
pb.start();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
错误消息:
“java.io.IOException:无法运行程序“fuseki server”(在目录“D:\jena-fuseki-1.0.1”中):CreateProcess error=2,系统找不到指定的文件
位于java.lang.ProcessBuilder.start(未知源)”
您需要将扩展名(
.exe
,.bat
,…)放在fuseki服务器命令文件中(shell为您执行此操作,但这里您给出了文件名)
您还需要使用
pb.start()
来实际启动该过程。Fuseki是一个JavaServletWebApp。看见您可以将.war文件放入tomcat或jetty或其他任何您自己的文件中,您不需要使用任何特殊的启动器 我也试过“fuseki server.bat”。但同样的错误给了我。pb.start()是什么意思?错误消息no clear me.@Teudimundo的意思是您需要为fuseki服务器
命令输入完整的文件名。对于windows,可执行文件通常以.exe、.com、.bat结尾。尝试在命令提示下运行dir fuseki server**
,以获取完整的文件名。@joey我添加了fuseki-server.bat。但同样的错误给了我。有没有其他方法可以像Tomcat服务器一样在应用程序启动时运行此服务器?(如添加到类路径)尝试将fuseki-server.bat
更改为D:\\jena-fuseki-1.0.1\\fuseki-server.bat
@joeyour genius。3周后你解决了我的问题。非常感谢你。祝您愉快:)。我已经在类路径中添加了ApacheTomcat。可以添加两台服务器吗?我的服务器文件夹包含Tomcat和jena-fuseki-1.0.1。如何将jena-fuseki-1.0.1添加到类路径中?添加到服务器不是一个问题吗?我添加了EclipseJ2EE项目服务器层次结构的屏幕截图。我应该把Fuseki服务器放在Tomcat服务器的哪个位置?
public static void main(String[] args) {
// TODO Auto-generated method stub
String[] command = { "fuseki-server", "--update", "--mem", "/ds" };
File directory = new File("D:\\jena-fuseki-1.0.1");
ProcessBuilder pb = new ProcessBuilder(command);
pb.directory(directory);
try {
pb.start();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}