JAva shellスクリプトを呼び出して参照

1133 ワード

private void invokeShell(String projectDirectory, String ipaOutputDirectory, String version, String appName) {  
	try {  
		//      sh  ,         ,        ,            。  
		ProcessBuilder pb = new ProcessBuilder("/bin/sh",   
		OnlineBuildController.class.getResource("/").getFile() + "/ipa-build.sh",  
		projectDirectory,  
		"-o", ipaOutputDirectory,  
		"-v", version,  
		"-i", appName,  
		"-n");  
		Process p = pb.start();  
		try {  
			InputStreamReader ir = new InputStreamReader(p.getInputStream());     
			LineNumberReader input = new LineNumberReader(ir);      
			String line = null;      
			while ((line = input.readLine()) != null){    
				logger.info("info:" + line);//        
			}      
			if(null != input){      
				input.close();      
			}  		  
			if(null != ir){      
				ir.close();      
			}   
			int extValue = p.waitFor();  
			logger.info("extValue:" + extValue);  
		} catch (InterruptedException e) {  
			e.printStackTrace();  
		}  
	} catch (IOException e) {  
		e.printStackTrace();  
	}  
}