JavaTM 2 Platform
Standard Ed. 5.0

java.lang
Ŭ·¡½º ProcessBuilder

java.lang.Object 
  »óÀ§¸¦ È®Àå java.lang.ProcessBuilder

public final class ProcessBuilder
extends Object

ÀÌ Å¬·¡½º´Â OS ÀÇ ÇÁ·Î¼¼½ºÀÇ ÀÛ¼º¿¡ »ç¿ëµË´Ï´Ù.

°¢ ProcessBuilderÀνºÅϽº´Â ÇÁ·Î¼¼½º ¼Ó¼ºÀÇ Ä÷º¼ÇÀ» °ü¸®ÇÕ´Ï´Ù. start() ¸Þ¼­µå´Â ÀÌ·¯ÇÑ ¼Ó¼ºÀ» °¡Áö´Â »õ·Î¿î Process ÀνºÅϽº¸¦ ÀÛ¼ºÇÕ´Ï´Ù. °°Àº ÀνºÅϽº·ÎºÎÅÍ start() ¸Þ¼­µå¸¦ ¹Ýº¹ÇØ È£ÃâÇØ, µ¿ÀÏÇÑ ¼Ó¼º ¶Ç´Â °ü·ÃµÈ ¼Ó¼ºÀ» °¡Áö´Â »õ·Î¿î ¼­ºê ÇÁ·Î¼¼½º¸¦ ÀÛ¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù.

°¢ ÇÁ·Î¼¼½ººô´õ ´Â ´ÙÀ½ÀÇ ÇÁ·Î¼¼½º ¼Ó¼ºÀ» °ü¸®ÇÕ´Ï´Ù.

ÇÁ·Î¼¼½ººô´õ ÀÇ ¼Ó¼ºÀ» º¯°æÇϸé, ¼Ó¼ºÀ» º¯°æÇÑ °´Ã¼ÀÇ start() ¸Þ¼­µå·Î ±× ÀÌÈÄ ½ÃÀ۵Ǵ ÇÁ·Î¼¼½º¿¡ ¿µÇâÀÌ ÀÖ½À´Ï´Ù¸¸, ±× ÀÌÀü¿¡ ½ÃÀÛµÈ ÇÁ·Î¼¼½º³ª Java ÇÁ·Î¼¼½º ÀÚü¿¡´Â ¿µÇâ ¾ø½À´Ï´Ù.

´ëºÎºÐÀÇ ¿¡·¯ üũ´Â start() ¸Þ¼­µå·Î ½ÇÇàµË´Ï´Ù. start() °¡ ½ÇÆÐÇϵµ·Ï, °´Ã¼ »óŸ¦ º¯°æÇÒ ¼ö ÀÖ½À´Ï´Ù . ¿¹¸¦ µé¾î Ä¿¸àµå ¼Ó¼ºÀ» ºñ¾îÀÖ´Â ¸®½ºÆ®·Î ¼³Á¤Çϸé, start() °¡ ºÒ·Á°¡ Áö ¾Ê´Â ÀÌ»ó ¿¹¿Ü´Â Throw µÇÁö ¾Ê½À´Ï´Ù.

ÀÌ Å¬·¡½º´Â µ¿±âÈ­ µÇÁö ¾Ê½À´Ï´Ù. º¹¼öÀÇ thread°¡ ProcessBuilderÀνºÅϽº¿¡ µ¿½Ã¿¡ Á¢¼ÓÇØ, Àû¾îµµ 1°³ÀÇ thread°¡ ±¸Á¶ÀûÀ¸·Î 1°³ÀÇ ¼Ó¼ºÀ» º¯°æÇßÀ» °æ¿ì, º¯°æµÈ ¼Ó¼ºÀº ¿ÜºÎ¿¡¼­ µ¿±âÈ­ µÇÁö ¾ÊÀ¸¸é ¾ÈµË´Ï´Ù.

µðÆúÆ®ÀÇ ÀÛ¾÷ µð·ºÅ丮¿Í ȯ°æÀ» »ç¿ëÇÏ´Â »õ·Î¿î ÇÁ·Î¼¼½º¸¦ ½ÃÀÛÇÏ´Â °ÍÀº ´ÙÀ½¿¡ ³ªÅ¸³»µµ·Ï ¿ëÀÌÇÕ´Ï´Ù.

 Process p = new ProcessBuilder("myCommand", "myArg"). start();
 

º¯°æµÈ ÀÛ¾÷ µð·ºÅ丮¿Í ȯ°æÀ» Æ÷ÇÔÇÑ ÇÁ·Î¼¼½º¸¦ ½ÃÀÛÇÏ´Â ¿¹¸¦ ´ÙÀ½¿¡ ³ªÅ¸³À´Ï´Ù.

 ProcessBuilder pb = new ProcessBuilder("myCommand", "myArg1", "myArg2");
 Map<String, String>
 env = pb.environment();
 env.put("VAR1", "myValue");
 env.remove("OTHERVAR");
 env.put("VAR2", env.get("VAR1") + "suffix");
 pb.directory("myDir");
 Process p = pb.start();
 

ȯ°æ º¯¼öÀÇ ¸í½ÃÀû ¼¼Æ®¸¦ °¡Áö´Â ÇÁ·Î¼¼½º¸¦ ½ÃÀÛÇÏ·Á¸é, ¿ì¼± Map.clear()¸¦ È£ÃâÇÏ°í ³ª¼­, ȯ°æ º¯¼ö¸¦ Ãß°¡ÇÕ´Ï´Ù.

µµÀÔµÈ ¹öÀü :
1.5

»ý¼ºÀÚ °³¿ä
ProcessBuilder (List <String > command)
          ÁöÁ¤µÈ OS ÇÁ·Î±×·¥°ú Àμö¸¦ °¡Áö´Â ÇÁ·Î¼¼½ººô´õ ¸¦ ±¸ÃàÇÕ´Ï´Ù.
ProcessBuilder (String ... command)
          ÁöÁ¤µÈ OS ÇÁ·Î±×·¥°ú Àμö¸¦ °¡Áö´Â ÇÁ·Î¼¼½ººô´õ ¸¦ ±¸ÃàÇÕ´Ï´Ù.
 
¸Þ¼­µå °³¿ä
 List <String > command ()
          ÇÁ·Î¼¼½ººô´õ ÀÇ OS ÇÁ·Î±×·¥°ú Àμö¸¦ ¸®ÅÏÇÕ´Ï´Ù.
 ProcessBuilder command (List <String > command)
          ÇÁ·Î¼¼½ººô´õ ÀÇ OS ÇÁ·Î±×·¥°ú Àμö¸¦ ¼³Á¤ÇÕ´Ï´Ù.
 ProcessBuilder command (String ... command)
          ÀÌ ÇÁ·Î¼¼½ººô´õ ÀÇ OS ÇÁ·Î±×·¥°ú Àμö¸¦ ¼³Á¤ÇÕ´Ï´Ù.
 File directory ()
          ÀÌ ÇÁ·Î¼¼½ººô´õ ÀÇ ÀÛ¾÷ µð·ºÅ丮¸¦ ¸®ÅÏÇÕ´Ï´Ù.
 ProcessBuilder directory (File  directory)
          ÀÌ ÇÁ·Î¼¼½ººô´õ ÀÇ ÀÛ¾÷ µð·ºÅ丮¸¦ ¼³Á¤ÇÕ´Ï´Ù.
 Map <String, String > environment ()
          ÀÌ ÇÁ·Î¼¼½ººô´õ ÀÇ È¯°æÀÇ Ä³¸¯ÅÍ ¶óÀÎ ¸ÊÀÇ ºä¸¦ ¸®ÅÏÇÕ´Ï´Ù.
 boolean redirectErrorStream ()
          ÀÌ ÇÁ·Î¼¼½ººô´õ°¡ Ç¥ÁØ ¿¡·¯¿Í Ç¥ÁØ Ãâ·ÂÀ» ¸ÓÁö ÇÒÁö ¾î¶³Áö¸¦ ÆÇÁ¤ÇÕ´Ï´Ù.
 ProcessBuilder redirectErrorStream (boolean redirectErrorStream)
          ÀÌ ÇÁ·Î¼¼½ººô´õ ÀÇ redirectErrorStream ÇÁ·ÎÆÛƼ¸¦ ¼³Á¤ÇÕ´Ï´Ù.
 Process start ()
          ÀÌ ÇÁ·Î¼¼½ººô´õ ÀÇ ¼Ó¼ºÀ» »ç¿ëÇØ »õ·Î¿î ÇÁ·Î¼¼½º¸¦ ½ÃÀÛÇÕ´Ï´Ù.
 
Ŭ·¡½º java.lang. Object ·ÎºÎÅÍ »ó¼ÓµÈ ¸Þ¼­µå
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

»ý¼ºÀÚ »ó¼¼

ProcessBuilder

public ProcessBuilder(List <String > command)
ÁöÁ¤µÈ OS ÇÁ·Î±×·¥°ú Àμö¸¦ °¡Áö´Â ÇÁ·Î¼¼½ººô´õ ¸¦ ±¸ÃàÇÕ´Ï´Ù. ÀÌ »ý¼ºÀÚ´Â command ¸®½ºÆ®ÀÇ º¹»çº»À» ÀÛ¼ºÇÏÁö ¾Ê½À´Ï´Ù. ÀÌÈÄÀÇ ¸®½ºÆ®ÀÇ °»½ÅÀº ÇÁ·Î¼¼½ººô´õ »óÅ¿¡ ¹Ý¿µµË´Ï´Ù. command°¡ À¯È¿ÇÑ OS Ä¿¸àµå¿¡ ´ëÀÀÇÒÁö ¾î¶³Áö´Â üũµÇÁö ¾Ê½À´Ï´Ù.

ÆĶó¹ÌÅÍ:
command - ÇÁ·Î±×·¥°ú ÇÁ·Î±×·¥ÀÇ Àμö¸¦ Æ÷ÇÔÇÑ ¸®½ºÆ®
¿¹¿Ü:
NullPointerException - Àμö°¡ nullÀÎ °æ¿ì

ProcessBuilder

public ProcessBuilder(String ... command)
ÁöÁ¤µÈ OS ÇÁ·Î±×·¥°ú Àμö¸¦ °¡Áö´Â ÇÁ·Î¼¼½ººô´õ ¸¦ ±¸ÃàÇÕ´Ï´Ù. ÀÌ »ý¼ºÀÚ´Â command ¹è¿­°ú °°Àº ij¸¯ÅÍ ¶óÀÎÀ» Æ÷ÇÔÇÑ Ä³¸¯ÅÍ ¶óÀÎ ¸®½ºÆ®¿¡ ÇÁ·Î¼¼½ººô´õ ÀÇ Ä¿¸àµå¸¦ °°Àº ¼ø¼­·Î ¼³Á¤ÇÏ´Â °£ÀÌ »ý¼ºÀÚ ÀÔ´Ï´Ù. command°¡ À¯È¿ÇÑ OS Ä¿¸àµå¿¡ ´ëÀÀÇÒÁö ¾î¶³Áö´Â üũµÇÁö ¾Ê½À´Ï´Ù.

ÆĶó¹ÌÅÍ:
command - ÇÁ·Î±×·¥°ú ÇÁ·Î±×·¥ÀÇ Àμö¸¦ Æ÷ÇÔÇÑ Ä³¸¯ÅÍ ¶óÀÎ ¹è¿­
¸Þ¼­µåÀÇ »ó¼¼

command

public ProcessBuilder  command(List <String > command)
ÇÁ·Î¼¼½ººô´õ ÀÇ OS ÇÁ·Î±×·¥°ú Àμö¸¦ ¼³Á¤ÇÕ´Ï´Ù. ÀÌ ¸Þ¼­µå´Â command ¸®½ºÆ®ÀÇ º¹»çº»À» ÀÛ¼ºÇÏÁö ¾Ê½À´Ï´Ù. ÀÌÈÄÀÇ ¸®½ºÆ®ÀÇ °»½ÅÀº ÇÁ·Î¼¼½ººô´õ »óÅ¿¡ ¹Ý¿µµË´Ï´Ù. command°¡ À¯È¿ÇÑ OS Ä¿¸àµå¿¡ ´ëÀÀÇÒÁö ¾î¶³Áö´Â üũµÇÁö ¾Ê½À´Ï´Ù.

ÆĶó¹ÌÅÍ:
command - ÇÁ·Î±×·¥°ú ÇÁ·Î±×·¥ÀÇ Àμö¸¦ Æ÷ÇÔÇÑ ¸®½ºÆ®
¹Ýȯ°ª:
ÇÁ·Î¼¼½ººô´õ
¿¹¿Ü:
NullPointerException - Àμö°¡ nullÀÎ °æ¿ì

command

public ProcessBuilder  command(String ... command)
ÀÌ ÇÁ·Î¼¼½ººô´õ ÀÇ OS ÇÁ·Î±×·¥°ú Àμö¸¦ ¼³Á¤ÇÕ´Ï´Ù. ÀÌ »ý¼ºÀÚ´Â command ¹è¿­°ú °°Àº ij¸¯ÅÍ ¶óÀÎÀ» Æ÷ÇÔÇÑ Ä³¸¯ÅÍ ¶óÀÎ ¸®½ºÆ®¿¡ Ä¿¸àµå¸¦ °°Àº ¼ø¼­·Î ¼³Á¤ÇÏ´Â °£ÀÌ ¸Þ¼­µåÀÔ´Ï´Ù. command°¡ À¯È¿ÇÑ OS Ä¿¸àµå¿¡ ´ëÀÀÇÒÁö ¾î¶³Áö´Â üũµÇÁö ¾Ê½À´Ï´Ù.

ÆĶó¹ÌÅÍ:
command - ÇÁ·Î±×·¥°ú ÇÁ·Î±×·¥ÀÇ Àμö¸¦ Æ÷ÇÔÇÑ Ä³¸¯ÅÍ ¶óÀÎ ¹è¿­
¹Ýȯ°ª:
ÀÌ ÇÁ·Î¼¼½ººô´õ

command

public List <String > command()
ÇÁ·Î¼¼½ººô´õ ÀÇ OS ÇÁ·Î±×·¥°ú Àμö¸¦ ¸®ÅÏÇÕ´Ï´Ù. ¸®ÅÏµÈ ¸®½ºÆ®´Â Ä«ÇÇ°¡ ¾Æ´Õ´Ï´Ù. ÀÌÈÄÀÇ ¸®½ºÆ®ÀÇ °»½ÅÀº ÇÁ·Î¼¼½ººô´õ »óÅ¿¡ ¹Ý¿µµË´Ï´Ù.

¹Ýȯ°ª:
ÇÁ·Î¼¼½ººô´õ ÀÇ ÇÁ·Î±×·¥°ú ÇÁ·Î±×·¥ÀÇ Àμö

environment

public Map <String,
String > environment()
ÀÌ ÇÁ·Î¼¼½ººô´õ ÀÇ È¯°æÀÇ Ä³¸¯ÅÍ ¶óÀÎ ¸ÊÀÇ ºä¸¦ ¸®ÅÏÇÕ´Ï´Ù. ÇÁ·Î¼¼½ººô´õ°¡ ÀÛ¼ºµÉ ¶§¸¶´Ù, ȯ°æÀº ÇöÀçÀÇ ÇÁ·Î¼¼½º ȯ°æÀÇ Ä«ÇÇ¿¡ ÃʱâÈ­µË´Ï´Ù (System.getenv()¸¦ ÂüÁ¶). ÀÌ °´Ã¼ÀÇ start() ¸Þ¼­µå·Î ½ÃÀ۵Ǵ ÀÌÈÄÀÇ ¼­ºê ÇÁ·Î¼¼½º´Â ÀÌ ¸ÊÀ» ȯ°æÀ¸·Î¼­ »ç¿ëÇÕ´Ï´Ù.

¸®ÅÏµÈ °´Ã¼´Â º¸Åë Map ¿ÀÆÛ·¹À̼ÇÀ» »ç¿ëÇØ º¯°æÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ·¯ÇÑ º¯°æÀº, start() ¸Þ¼­µå¸¦ »ç¿ëÇØ ½ÃÀÛµÈ ¼­ºê ÇÁ·Î¼¼½º·Î °¡½ÃÀÔ´Ï´Ù. 2°³ÀÇ ProcessBuilderÀνºÅϽº´Â Ç×»ó µ¶¸³ÇÑ ÇÁ·Î¼¼½º ȯ°æÀ» °¡Áö°í ÀÖ½À´Ï´Ù. ÀÌ ¶§¹®¿¡ ¸®ÅÏµÈ ¸ÊÀº ´Ù¸¥ ProcessBuilderÀνºÅϽº³ª, System.getenv ·Î ¸®ÅÏµÈ °ª¿¡ ¹Ý¿µµÉ °ÍÀº ¾ø½À´Ï´Ù.

½Ã½ºÅÛÀÌ È¯°æ º¯¼ö¸¦ Áö¿ø ÇÏ°í ÀÖÁö ¾Ê´Â °æ¿ì´Â ºñ¾îÀÖ´Â ¸ÊÀÌ ¸®Åϵ˴ϴ٠.

¸®ÅÏµÈ ¸ÊÀº null Å°³ª °ªÀ» Çã¿ë ÇÏÁö ¾Ê½À´Ï´Ù. null Å°³ª °ªÀ» »ðÀÔÇϰųª À̰͵éÀÌ ÀÖ´ÂÁö Á¶È¸Çϸé, NullPointerExceptionÀ» ¹ß»ý½Ãŵ´Ï´Ù. String ÇüÀÌ ¾Æ´Ñ Å°³ª °ªÀÌ ÀÖ´ÂÁö Á¶È¸Çϸé, ClassCastExceptionÀ» ¹ß»ý½Ãŵ´Ï´Ù.

¸®ÅÏµÈ ¸ÊÀÇ µ¿ÀÛÀº ½Ã½ºÅÛ¿¡ ÀÇÁ¸ÇÕ´Ï´Ù. ȯ°æ º¯¼öÀÇ º¯°æÀ» Çã°¡ÇÏÁö ¾Ê´Â ½Ã½ºÅÛÀÌ ÀÖÀ¸¸é, ƯÁ¤ÀÇ º¯¼ö¸íÀ̳ª °ªÀÌ ±ÝÁöµÇ´Â ½Ã½ºÅÛµµ ÀÖ½À´Ï´Ù. ÀÌ ÀÌÀ¯·ÎºÎÅÍ, OS ·Î º¯°æÀÌ Çã°¡µÇ¾î ÀÖÁö ¾ÊÀº °æ¿ì, ¸ÊÀ» º¯°æÇÏ·Á°í Çϸé, UnsupportedOperationException ³ª IllegalArgumentException ·Î ½ÇÆÐÇÒ °¡´É¼ºÀÌ ÀÖ½À´Ï´Ù.

ȯ°æ º¯¼ö¸í°ú ȯ°æ º¯¼öÀÇ °ªÀÇ ¿ÜºÎ Çü½ÄÀº ½Ã½ºÅÛ¿¡ Á¸ÇϹǷΠȯ°æ º¯¼ö¸í°ú ȯ°æ º¯¼öÀÇ °ª°ú Java Unicode ij¸¯ÅÍ ¶óÀΰúÀÇ »çÀÌ¿¡ 1 ´ë 1 ¸ÅÇÎ °ü°è°¡ ¾øÀ» °¡´É¼ºÀÌ ÀÖ½À´Ï´Ù. ±× °æ¿ì¿¡¼­µµ, Java ÄÚµå·Î º¯°æµÇ¾î ÀÖÁö ¾ÊÀº ȯ°æ º¯¼ö°¡ ¼­ºê ÇÁ·Î¼¼½º¿¡¼­µµ º¯°æµÇ¾î ÀÖÁö ¾ÊÀº ³×ÀÌƼºêÀΠǥÇöÀ» °¡Áöµµ·Ï ¸ÊÀº ±¸ÇöµË´Ï´Ù.

¸®ÅÏµÈ ¸Ê°ú ±× ÄÚ·¹Å©¼Çºä´Â Object.equals(java.lang.Object) ¸Þ¼­µå¿Í Object.hashCode() ¸Þ¼­µåÀÇ ¹ü¿ë ±Ô¾à¿¡ µû¸£Áö ¾ÊÀ» °¡´É¼ºÀÌ ÀÖ½À´Ï´Ù.

¸®ÅÏµÈ ¸ÊÀº ÀϹÝÀûÀ¸·Î ¸ðµç Ç÷§Æû¿¡¼­ ´ë¹®ÀÚ¿Í ¼Ò¹®ÀÚ¸¦ ±¸º°ÇÕ´Ï´Ù.

½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇÏ´Â °æ¿ì´Â RuntimePermission ("getenv. *") Á¢±Ù ±ÇÇÑÀ» »ç¿ëÇØ checkPermission ¸Þ¼­µå°¡ È£ÃâµË´Ï´Ù. ÀÌ °á°ú, SecurityExceptionÀÌ ¹ß»ýµÇ´Â ÀÏÀÌ ÀÖ½À´Ï´Ù.

Java ¼­ºê ÇÁ·Î¼¼½º¿¡ Á¤º¸¸¦ °Ç³×ÁÖ´Â °æ¿ì, ȯ°æ º¯¼öº¸´Ù½Ã½ºÅÛ ÇÁ·ÎÆÛƼ°¡ Ãßõ µÇ°í ÀÖ½À´Ï´Ù.

¹Ýȯ°ª:
ÀÌ ÇÁ·Î¼¼½ººô´õ ÀÇ È¯°æ
¿¹¿Ü:
SecurityException - ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇØ, checkPermission ¸Þ¼­µå°¡ ÇÁ·Î¼¼½º ȯ°æ¿¡ÀÇ ¾×¼¼½º¸¦ Çã°¡ÇÏÁö ¾ÊÀ» ¶§
°ü·Ã Ç׸ñ:
Runtime.exec(String[], String[], java.io.File), System.getenv()

directory

public File  directory()
ÀÌ ÇÁ·Î¼¼½ººô´õ ÀÇ ÀÛ¾÷ µð·ºÅ丮¸¦ ¸®ÅÏÇÕ´Ï´Ù.ÀÌ ÀÌÈÄ, ÀÌ °´Ã¼ÀÇ start() ¸Þ¼­µå¿¡ ÀÇÇØ ½ÃÀÛµÈ ¼­ºê ÇÁ·Î¼¼½º´Â ÀÌ µð·ºÅ丮¸¦ ÀÛ¾÷ µð·ºÅ丮·Î¼­ »ç¿ëÇÕ´Ï´Ù. ¸®ÅÏµÈ °ªÀº, null °¡´É¼ºÀÌ ÀÖ½À´Ï´Ù. ÀÌ°ÍÀº ÇöÀçÀÇ Java ÇÁ·Î¼¼½ºÀÇ ÀÛ¾÷ µð·ºÅ丮 (ÀϹÝÀûÀ¸·Î user.dir ½Ã½ºÅÛ ÇÁ·ÎÆÛƼ·Î ÁöÁ¤µÈ µð·ºÅ丮)¸¦ child processÀÇ ÀÛ¾÷ µð·ºÅ丮·Î¼­ »ç¿ëÇÏ´Â °ÍÀ»ÀǹÌÇÕ´Ï´Ù.

¹Ýȯ°ª:
ÀÌ ÇÁ·Î¼¼½ººô´õ ÀÇ ÀÛ¾÷ µð·ºÅ丮

directory

public ProcessBuilder  directory(File  directory)
ÀÌ ÇÁ·Î¼¼½ººô´õ ÀÇ ÀÛ¾÷ µð·ºÅ丮¸¦ ¼³Á¤ÇÕ´Ï´Ù.ÀÌ ÀÌÈÄ, ÀÌ °´Ã¼ÀÇ start() ¸Þ¼­µå·Î ½ÃÀÛµÈ ¼­ºê ÇÁ·Î¼¼½º´Â ÀÌ µð·ºÅ丮¸¦ ÀÛ¾÷ µð·ºÅ丮·Î¼­ »ç¿ëÇÕ´Ï´Ù. Àμö´Â null °¡´É¼ºÀÌ ÀÖ½À´Ï´Ù. ÀÌ°ÍÀº ÇöÀçÀÇ Java ÇÁ·Î¼¼½ºÀÇ ÀÛ¾÷ µð·ºÅ丮 (ÀϹÝÀûÀ¸·Î user.dir ½Ã½ºÅÛ ÇÁ·ÎÆÛƼ·Î ÁöÁ¤µÈ µð·ºÅ丮)¸¦ child processÀÇ ÀÛ¾÷ µð·ºÅ丮·Î¼­ »ç¿ëÇÏ´Â °ÍÀ»ÀǹÌÇÕ´Ï´Ù.

ÆĶó¹ÌÅÍ:
directory - »õ·Î¿î ÀÛ¾÷ µð·ºÅ丮
¹Ýȯ°ª:
ÀÌ ÇÁ·Î¼¼½ººô´õ

redirectErrorStream

public boolean redirectErrorStream()
ÀÌ ÇÁ·Î¼¼½ººô´õ°¡ Ç¥ÁØ ¿¡·¯¿Í Ç¥ÁØ Ãâ·ÂÀ» ¸ÓÁö ÇÒÁö ¾î¶³Áö¸¦ ÆÇÁ¤ÇÕ´Ï´Ù.

ÀÌ ÇÁ·ÎÆÛƼ°¡ trueÀÎ °æ¿ì, ÀÌ °´Ã¼ÀÇ start() ¸Þ¼­µå·Î ±× ÀÌÈÄ ½ÃÀÛµÈ ¼­ºê ÇÁ·Î¼¼½º¿¡ ÀÇÇØ »ý¼ºµÇ´Â ¿¡·¯ Ãâ·ÂÀº Ç¥ÁØ Ãâ·Â°ú ¸ÓÁö µË´Ï´Ù. ÀÌ°Í¿¡ ÀÇÇØ Process.getInputStream() ¸Þ¼­µå¸¦ »ç¿ëÇØ, ¿¡·¯ Ãâ·Â°ú Ç¥ÁØ Ãâ·ÂÀÇ ¾çÂÊ ¸ðµÎ¸¦ Àо ¼ö°¡ ÀÖ½À´Ï´Ù. ¸ÓÁö¿¡ÀÇÇØ ¿¡·¯ ¸Þ¼¼Áö¿Í ´ëÀÀÇÏ´Â Ãâ·Â°úÀÇ »ó°üÀ» ³ªÅ¸³»´Â °ÍÀÌ ¿ëÀÌÇÏ°Ô µË´Ï´Ù. ÃʱⰪ ´Â false ÀÔ´Ï´Ù.

¹Ýȯ°ª:
ÀÌ ÇÁ·Î¼¼½ººô´õ ÀÇ redirectErrorStream ÇÁ·ÎÆÛƼ

redirectErrorStream

public ProcessBuilder  redirectErrorStream(boolean redirectErrorStream)
ÀÌ ÇÁ·Î¼¼½ººô´õ ÀÇ redirectErrorStream ÇÁ·ÎÆÛƼ¸¦ ¼³Á¤ÇÕ´Ï´Ù.

ÀÌ ÇÁ·ÎÆÛƼ°¡ trueÀÎ °æ¿ì, ÀÌ °´Ã¼ÀÇ start() ¸Þ¼­µå·Î ±× ÀÌÈÄ ½ÃÀÛµÈ ¼­ºê ÇÁ·Î¼¼½º¿¡ ÀÇÇØ »ý¼ºµÇ´Â ¿¡·¯ Ãâ·ÂÀº Ç¥ÁØ Ãâ·Â°ú ¸ÓÁö µË´Ï´Ù. ÀÌ°Í¿¡ ÀÇÇØ Process.getInputStream() ¸Þ¼­µå¸¦ »ç¿ëÇØ, ¿¡·¯ Ãâ·Â°ú Ç¥ÁØ Ãâ·ÂÀÇ ¾çÂÊ ¸ðµÎ¸¦ Àо ¼ö°¡ ÀÖ½À´Ï´Ù. ¸ÓÁö¿¡ÀÇÇØ ¿¡·¯ ¸Þ¼¼Áö¿Í ´ëÀÀÇÏ´Â Ãâ·Â°úÀÇ »ó°üÀ» ³ªÅ¸³»´Â °ÍÀÌ ¿ëÀÌÇÏ°Ô µË´Ï´Ù. ÃʱⰪ ´Â false ÀÔ´Ï´Ù.

ÆĶó¹ÌÅÍ:
redirectErrorStream - »õ·Î¿î ÇÁ·ÎÆÛƼÀÇ °ª
¹Ýȯ°ª:
ÀÌ ÇÁ·Î¼¼½ººô´õ

start

public Process  start()
              throws IOException 
ÀÌ ÇÁ·Î¼¼½ººô´õ ÀÇ ¼Ó¼ºÀ» »ç¿ëÇØ »õ·Î¿î ÇÁ·Î¼¼½º¸¦ ½ÃÀÛÇÕ´Ï´Ù.

ÀÌ »õ·Î¿î ÇÁ·Î¼¼½º´Â directory() ·Î ÁöÁ¤µÈ ÀÛ¾÷ µð·ºÅ丮ÀÇ, environment() ·Î ÁöÁ¤µÈ ÇÁ·Î¼¼½º ȯ°æÀ» °¡Áö´Â command() ·Î ÁöÁ¤µÈ Ä¿¸àµå¿Í Àμö¸¦ È£ÃâÇÕ´Ï´Ù.

ÀÌ ¸Þ¼­µå´Â Ä¿¸àµå°¡ À¯È¿ÇÑ OS Ä¿¸àµåÀÎ °ÍÀ» üũÇÕ´Ï´Ù. ¾î´À Ä¿¸àµå°¡ À¯È¿ÇÑ°¡ ¾î¶²°¡´Â ½Ã½ºÅÛ Á¸ÀÔ´Ï´Ù¸¸, Ä¿¸àµå´Â Àû¾îµµ null ÀÌ¿ÜÀÇ Ä³¸¯ÅÍ ¶óÀÎÀÇ ºñ¾îÀÖÁö ¾ÊÀº ¸®½ºÆ®°¡ ¾Æ´Ï¸é ¾ÈµË´Ï´Ù.

½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇÏ´Â °æ¿ì´Â command ¹è¿­ÀÇ ÃÖÃÊÀÇ ÄÄÆÛ³ÍÆ®¸¦ Àμö·Î¼­ »ç¿ëÇØ checkExec ¸Þ¼­µå°¡ È£ÃâµË´Ï´Ù. ÀÌ °á°ú, SecurityExceptionÀÌ ¹ß»ýµÇ´Â ÀÏÀÌ ÀÖ½À´Ï´Ù.

OS ÇÁ·Î¼¼½ºÀÇ ½ÃÀÛÀº Áö±ØÈ÷ ½Ã½ºÅÛ¿¡ ÀÇÁ¸ÇÕ´Ï´Ù. ¹ß»ýÇÒ °¡´É¼ºÀÌ ÀÖ´Â ºÒÆíÀº ´ÙÀ½°ú °°½À´Ï´Ù.

ÀÌ»óÀÇ ÄÉÀ̽º¿¡¼­´Â ¿¹¿Ü°¡ ¹ß»ý µË´Ï´Ù. ¿¹¿ÜÀÇ Á¤È®ÇÑ Æ¯¼ºÀº ½Ã½ºÅÛ¿¡ ÀÇÁ¸ÇÕ´Ï´Ù¸¸, ¿¹¿Ü´Â Ç×»ó IOException ¼­ºê Ŭ·¡½º°¡ µË´Ï´Ù.

ÀÌ ÇÁ·Î¼¼½ººô´õ¿¡ ÀÇ ÀÌÈÄÀÇ º¯°æÀº ¸®ÅÏµÈ Process¿¡ ¿µÇâÀ» ¹ÌÄ¡Áö ¾Ê½À´Ï´Ù.

¹Ýȯ°ª:
¼­ºê ÇÁ·Î¼¼½º¸¦ °ü¸®Çϱâ À§ÇÑ »õ·Î¿î Process °´Ã¼
¿¹¿Ü:
NullPointerException - Ä¿¸àµå ¸®½ºÆ®ÀÇ ¿ä¼Ò°¡ nullÀÎ °æ¿ì
IndexOutOfBoundsException - Ä¿¸àµå°¡ ºñ¾îÀÖ´Â (»çÀÌÁî°¡ 0)ÀÇ ¸®½ºÆ®ÀÇ °æ¿ì
SecurityException - ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇØ, checkExec ¸Þ¼­µå°¡ ¼­ºê ÇÁ·Î¼¼½ºÀÇ ÀÛ¼ºÀ» Çã°¡ÇÏÁö ¾Ê´Â °æ¿ì
IOException - ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
°ü·Ã Ç׸ñ:
Runtime.exec(String[], String[], java.io.File), SecurityManager.checkExec(String)

JavaTM 2 Platform
Standard Ed. 5.0

Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy µµ ÂüÁ¶ÇϽʽÿÀ.