使用apache commons-exec运行git clone:如何输入密码?

时间:2012-12-01 05:18:09

标签: java git apache-commons-exec

我尝试使用apache commons-exec来运行git clone命令但卡住了,它根本没有提示我输入密码并阻止它。

DefaultExecutor executor = new DefaultExecutor();
executor.setStreamHandler( new PumpStreamHandler( System.out, System.err, System.in ) );
executor.execute( "git clone --progress -v https://xxx/prj.git" );

有什么想法可以解决这个问题吗?

1 个答案:

答案 0 :(得分:1)

我找到了解决此问题的方法,只需将用户名和passwd包装为输入流:

String input="...";        
executor.setStreamHandler( new PumpStreamHandler( System.out, System.err, new ByteArrayInputStream(
            input.getBytes() ) ) );