Java 使用process Builder从jvm启动redis服务器
我已使用安装redis 3.0.7Java 使用process Builder从jvm启动redis服务器,java,bash,redis,processbuilder,Java,Bash,Redis,Processbuilder,我已使用安装redis 3.0.7 sudo yum install -y gcc-c++ wget http://download.redis.io/releases/redis-3.0.7.tar.gz tar xzf redis-3.0.7.tar.gz sudo make -C redis-3.0.7/deps lua hiredis linenoise sudo make -C redis-3.0.7 MALLOC=libc install 上面的命令是使用下面的代码从jmv运行
sudo yum install -y gcc-c++
wget http://download.redis.io/releases/redis-3.0.7.tar.gz
tar xzf redis-3.0.7.tar.gz
sudo make -C redis-3.0.7/deps lua hiredis linenoise
sudo make -C redis-3.0.7 MALLOC=libc install
上面的命令是使用下面的代码从jmv运行的
redis服务器在命令行上可用后
我可以用ssh连接到我所有的盒子上,并运行redis服务器来启动一个redis实例
但是,当我尝试使用java中的redis server命令时
Process p = Runtime.getRuntime().exec(command);
p.waitFor();
int exitCode = p.exitValue();
BufferedReader reader;
if (exitCode != 0 ){
System.out.println("ERROR exit code = "+p.exitValue()+" cmd="+command);
reader = new BufferedReader(new InputStreamReader(p.getErrorStream()));
}else{
reader = new BufferedReader(new InputStreamReader(p.getInputStream()));
}
我发现了错误
ERROR exit code = 1 cmd=nohup redis-server >> out.txt 2>&1 & echo $!
如果我尝试
sudo nohup redis-server >> out.txt 2>&1 & echo $!
我发现cmd未找到错误
我错过了什么把戏