执行以下命令时,系统会提示我输入密码:
$ git pull
Enter passphrase for key (...)
当我尝试使用 Apache Commons Exec 以编程方式显示相同的信息时,程序卡住并且不打印任何内容:
CommandLine cmd = new CommandLine( "git" );
cmd.addArgument( "pull" );
DefaultExecutor executor = new DefaultExecutor();
executor.setStreamHandler( new PumpStreamHandler( System.out, System.err, System.in ) );
executor.execute( cmd );
为什么该示例没有打印任何内容就卡住了,并且在使用本机控制台时提示我提供 git 密码?