|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
ÀÌÀü Ŭ·¡½º ´ÙÀ½ Ŭ·¡½º | ÇÁ·¹ÀÓÀ¸·Î ÇÁ·¹ÀÓ ¾øÀÌ | |||||||||
°³¿ä: NESTED | Çʵå | constructor¡¡ ¡¡ | ¸Þ¼µå | »ó¼¼: Çʵå | constructor¡¡ ¡¡ | ¸Þ¼µå |
public static interface Pack200.Packer
packer ¿£ÁøÀº ´Ù¾çÇÑ º¯È¯À» ÀÔ·Â JAR ÆÄÀÏ¿¡ Àû¿ëÇØ, ÆÑ½ºÆ®¸²À» gzip ³ª zip µîÀÇ ¾Ð·ÂÀ» »ç¿ëÇØ Å«ÆøÀ¸·Î ¾ÐÃà °¡´ÉÇÏ°Ô ÇÕ´Ï´Ù. ¿£ÁøÀÇ ÀνºÅϽº´Â Pack200.newPacker()
¸¦
»ç¿ëÇØ ÃëµæÇÒ ¼ö ÀÖ½À´Ï´Ù.
°íµµÀÇ ¾ÐÃàÀº JSR 200 »ç¾çÀ¸·Î ¼³¸íµÇ°í ÀÖ´Â ´Ù¼öÀÇ Å×Å©´ÐÀ» »ç¿ëÇØ ½ÇÇöµË´Ï´Ù. ÀÌ·¯ÇÑ ±â¼ú¿¡´Â Á¤¼ö Ç®ÀÇ ¼ÒÆ®, Àç¼ø¼ ºÙ¿© ¹× µ¿À§°ªÀÇ ¹è°ªÀÌ Æ÷ÇԵ˴ϴÙ.
pack ¿£ÁøÀº ÃʱâȵǸé, ´ÙÀ½¿¡ ³ªÅ¸³»´Â ÇÁ·ÎÆÛƼ·Î ±ÔÁ¤µÈ Ãʱ⠻óŰ¡ µË´Ï´Ù. Ãʱ⠻óŸ¦ Á¶ÀÛÇÏ·Á¸é,
(properties()
¸¦
»ç¿ëÇØ) ¿£Áø ÇÁ·ÎÆÛƼ¸¦ ÃëµæÇÏ°í ³ª¼, ¼öÁ¤ÇÑ ÇÁ·ÎÆÛƼ¸¦ ¸Ê¿¡ Æ÷ÇÔÇÕ´Ï´Ù. resource file´Â ÀÏÀý º¯°æ¾øÀÌ °Ç³×¹Þ½À´Ï´Ù. unpacker´Â
Á¤¼ö Ç® À¯¼øÇÑ ¾î´À ÀϹÝÀûÀÌÁö ¾Ê´Â Ŭ·¡½º ÆÄÀÏ ±â´É¿¡ ÀÚÀ¯·Ó°Ô º¯°æÇÒ ¼ö Àֱ⠶§¹®¿¡
Ŭ·¡½º ÆÄÀÏ¿¡´Â µ¿ÀÏÇÑ ¹ÙÀÌÆ®´Â Æ÷ÇÔµÇÁö ¾Ê½À´Ï´Ù. ´Ù¸¸, ¡¸Java °¡»ó ¸Ó½Å »ç¾ç¡¹(http://java.sun.com/docs/books/vmspec/html/ClassFile.doc.html )·Î ÁöÁ¤µÇ°í ÀÖµµ·Ï, ÀÌ·¯ÇÑ Å¬·¡½º ÆÄÀÏÀº ¹ÌÀûÀ¸·Î µ¿ÀÏÇÕ´Ï´Ù.
µðÆúÆ®¿¡¼´Â packer°¡ JAR ¿ä¼ÒÀÇ ¼ø¼¸¦ º¯°æÇÒ °ÍÀº ¾ø½À´Ï´Ù. ¶Ç, °¢ JAR ¿ä¼ÒÀÇ ¼öÁ¤ ½Ã°£ ¹× µðÇ÷¹ÀÌ¼Ç ÈùÆ®´Â º¯°æÀ» ´õÇØÁöÁö ¾Ê°í¿¡°Ô °Ç³×Áý´Ï´Ù (Unix ÆÄÀÏÀÇ Á¢±Ù ±ÇÇÑÀ» ºÎ¿©ÇÏ´Â Ãß°¡ ¼Ó¼ºµîÀÇ, ´Ù¸¥ ZIP ¾îÄ«À̺ê(archive) Á¤º¸´Â ¾ø¾îÁø´Ù).
ÀϹÝÀûÀ¸·Î JAR ÆÑ ¹× unpack¿¡ÀÇÇØ JAR Ŭ·¡½º ÆÄÀϳ»¿¡ ÀÖ´Â ¹ÙÀÌÆ® ´ÜÀ§ÀÇ ÄÁÅÙÃ÷°¡ º¯°æµË´Ï´Ù. À̰ÍÀº º¸Åë, ÆÑ ¹× unpack¿¡ÀÇÇØ JAR ¿ä¼ÒÀÇ ¹ÙÀÌÆ® ´ÜÀ§ À̹ÌÁö¿¡ ÀÇÁ¸µÈ µðÁöÅÐ ¼¸íÀÌ ¸ðµÎ ¹«È¿°¡ µÇ´Â °ÍÀ»ÀǹÌÇÕ´Ï´Ù. JAR ¼¸í°ú ÆÑÀÇ ¾çÂÊ ¸ðµÎ¸¦ ½ÇÇàÇϱâ À§Çؼ´Â ÃÖÃÊ·Î JAR ÆÑ°ú unpack¸¦ ½ÇÇàÇØ ¡¸Á¤±ÔÈ¡¹ÇÏ°í ³ª¼, unpack µÈ JAR ¿ä¼Ò»óÀÇ ¼¸íÀ» °è»êÇØ, ¸¶Áö¸·¿¡ ¼¸íÇÊÀÇ JAR¸¦ ÀçÆÑ ÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù. ¾çÂÊ ¸ðµÎÀÇ ÆÑ ¼ø¼·Î Á¤È®ÇÏ°Ô °°Àº ¿É¼ÇÀ» »ç¿ëÇØ ÁÖ¼¼¿ä. ¶Ç, Ŭ·¡½º ÆÄÀÏÀÇ »çÀÌÁî´Â ¹Ì¹¦ÇÏ°Ô º¯ÈÇϱâ À§ÇØ, ¼¼±×¸ÕÆ®(segment) °æ°è¸¦ µµÇÏÁö ¾Ê°í ·Î º¯°æÇØ ¹ö¸®´Â °ÍÀ» ÇÇÇϱâ À§Çؼ ¼¼±×¸ÕÆ®(segment) Á¦ÇÑÀ» ¡¸-1¡¹À¸·Î ¼³Á¤ÇÏ´Â °ÍÀÌ ÇÊ¿äÇÑ °æ¿ìµµ ÀÖ½À´Ï´Ù.
(À̰ÍÀÌ ±â´ÉÇÏ´Â ÀÌÀ¯´Â ´ÙÀ½°ú °°ÀÌ. Ŭ·¡½º ÆÄÀÏ ±¸Á¶¿¡ ´ëÇØ¼ packer°¡ ½ÇÇàÇÏ´Â Àç¼ø¼ºÎ´Â ³ª¹«µîÀ̱⠶§¹®¿¡ 2¹øÂ°ÀÇ ÆÑÀ¸·Î ÃÖÃÊÀÇ ÆÐÅ·¿¡ ÀÇÇØ »ý¼ºµÈ ¼ø¼°¡ º¯°æµÉ °ÍÀº ¾ø´Ù. ¶Ç, JSR 200 »ç¾ç¿¡ÀÇÇØ unpacker´Â ¾îÄ«À̺ê(archive) ¿ä¼ÒÀÇ Æ¯Á¤ÀÇ Àü¼Û ¼ø¼¿¡ ´ëÇØ¼ ÁöÁ¤µÈ ¹ÙÀÌÆ® ´ÜÀ§ À̹ÌÁö¸¦ »ý¼ºÇÏ´Â °ÍÀÌ º¸ÁõµÇ°í ÀÖ´Ù. )
ÇÊµå °³¿ä | |
---|---|
static String |
CLASS_ATTRIBUTE_PFX
Ŭ·¡½º ¼Ó¼º¸í¿¡ ¿¬°áµÇ¾úÀ» °æ¿ì, JSR 200 »ç¾çÀ¸·Î ÁöÁ¤µÈ ·¹À̾ƿô ¾ð¾î¸¦ »ç¿ëÇØ, ±× ¼Ó¼ºÀÇ Çü½ÄÀ» ³ªÅ¸³À´Ï´Ù. |
static String |
CODE_ATTRIBUTE_PFX
ÄÚµå ¼Ó¼º¸íÀ¸·Î ¿¬°áÇØ »ç¿ëµÇ¾úÀ» °æ¿ì, ¼Ó¼ºÀÇ Çü½ÄÀ» ³ªÅ¸³À´Ï´Ù. |
static String |
DEFLATE_HINT
ÀÌ ÇÁ·ÎÆÛƼ°¡ TRUE ¶Ç´Â FALSE ·Î ¼³Á¤µÇ¸é, packer´Â Ãâ·Â ¾îÄ«À̺ê(archive)³»¿¡¼ °Å±â¿¡ ÀÀÇÑ µðÇ÷¹ÀÌ¼Ç ÈùÆ®¸¦ ¼³Á¤ÇÕ´Ï´Ù. |
static String |
EFFORT
ÀÌ ÇÁ·ÎÆÛƼ°¡ 1 ÀÚ¸®¼öÀÇ 10 Áø¼ö·Î ¼³Á¤µÇ¸é, packer´Â ÁöÁ¤µÈ ¾çÀÇ ³ë·ÂÀ» ¾îÄ«À̺ê(archive)ÀÇ ¾ÐÃà¿¡ ¼ÒºñÇÕ´Ï´Ù. |
static String |
ERROR
ij¸¯ÅÍ ¶óÀÎ ¡¸error¡¹´Â ƯÁ¤ÀÇ ÇÁ·ÎÆÛƼ·Î »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. |
static String |
FALSE
ij¸¯ÅÍ ¶óÀÎ ¡¸false¡¹´Â ƯÁ¤ÀÇ ÇÁ·ÎÆÛƼ·Î »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. |
static String |
FIELD_ATTRIBUTE_PFX
ÇÊµå ¼Ó¼º¸íÀ¸·Î ¿¬°áÇØ »ç¿ëµÇ¾úÀ» °æ¿ì, ¼Ó¼ºÀÇ Çü½ÄÀ» ³ªÅ¸³À´Ï´Ù. |
static String |
KEEP
ij¸¯ÅÍ ¶óÀÎ ¡¸keep¡¹´Â ƯÁ¤ÀÇ ÇÁ·ÎÆÛƼ·Î »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. |
static String |
KEEP_FILE_ORDER
ÀÌ ÇÁ·ÎÆÛƼ°¡ TRUE ·Î ¼³Á¤µÇ¸é, packer´Â ¼Ò½º ¾îÄ«À̺ê(archive)³»ÀÇ ¸ðµç ¿ä¼Ò¸¦ ¿øÀÇ ¼ø¼·Î Àü¼Û ÇÕ´Ï´Ù. |
static String |
LATEST
ij¸¯ÅÍ ¶óÀÎ ¡¸latest¡¹´Â ƯÁ¤ÀÇ ÇÁ·ÎÆÛƼ·Î »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. |
static String |
METHOD_ATTRIBUTE_PFX
¸Þ¼µå ¼Ó¼º¸íÀ¸·Î ¿¬°áÇØ »ç¿ëµÇ¾úÀ» °æ¿ì, ¼Ó¼ºÀÇ Çü½ÄÀ» ³ªÅ¸³À´Ï´Ù. |
static String |
MODIFICATION_TIME
ÀÌ ÇÁ·ÎÆÛƼ°¡ Ư¼öÇÑ Ä³¸¯ÅÍ ¶óÀÎ LATEST ·Î ¼³Á¤µÇ¸é, packer´Â
¿øÀÇ ¾îÄ«À̺ê(archive)³»ÀÇ ÀÌ¿ë °¡´ÉÇÑ Àü¿£Æ®¸®³»¿¡¼ ÃÖ½ÅÀÇ ¼öÁ¤ ½Ã°£, ¶Ç´Â °¢ ¼¼±×¸ÕÆ®(segment)³»ÀÇ ÀÌ¿ë °¡´ÉÇÑ Àü¿£Æ®¸®ÀÇ ÃÖ½ÅÀÇ ¼öÁ¤ ½Ã°£ÀÇ °áÁ¤À» ½ÃµµÇÕ´Ï´Ù. |
static String |
PASS
ij¸¯ÅÍ ¶óÀÎ ¡¸pass¡¹´Â ƯÁ¤ÀÇ ÇÁ·ÎÆÛƼ·Î »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. |
static String |
PASS_FILE_PFX
ÆÄÀÏÀ» ¾ÐÃàÇÏÁö ¾Ê°í ¹ÙÀÌÆ® ´ÜÀ§·Î °Ç³×ÁÖ´Â °ÍÀ» ³ªÅ¸³À´Ï´Ù. |
static String |
PROGRESS
unpacker ÁøÃ´ »óȲÀ» ÆÛ¼¾Æ®·Î °¡¸®Åµ´Ï´Ù. |
static String |
SEGMENT_LIMIT
ÀÌ ÇÁ·ÎÆÛƼ´Â °¢ ¾îÄ«À̺ê(archive) ¿ä¼ÒÀÇ ÃßÁ¤ Ÿ°Ù »çÀÌÁî N (´ÜÀ§´Â ¹ÙÀÌÆ®)¸¦ ºÎ¿©ÇÏ´Â ¼öÄ¡ÀÔ´Ï´Ù. |
static String |
STRIP
ij¸¯ÅÍ ¶óÀÎ ¡¸strip¡¹´Â ƯÁ¤ÀÇ ÇÁ·ÎÆÛƼ·Î »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. |
static String |
TRUE
ij¸¯ÅÍ ¶óÀÎ ¡¸true¡¹´Â ƯÁ¤ÀÇ ÇÁ·ÎÆÛƼ·Î »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. |
static String |
UNKNOWN_ATTRIBUTE
ºÒ¸íÇÑ ¼Ó¼ºÀ» Æ÷ÇÔÇÑ Å¬·¡½º ÆÄÀÏ¿¡ Á¶¿ìÇßÀ» ¶§¿¡ ½ÇÇàÇÏ´Â ¾×¼ÇÀ» ³ªÅ¸³À´Ï´Ù. |
¸Þ¼µå °³¿ä | |
---|---|
void |
addPropertyChangeListener (PropertyChangeListener listener)
PropertyChange À̺¥Æ®ÀÇ ¸®½º³Ê¸¦ ÇÁ·ÎÆÛƼ ¸Ê¿¡ µî·ÏÇÕ´Ï´Ù. |
void |
pack (JarFile in,
OutputStream out)
JarFile¸¦ ÃëµæÇØ, Pack200 ¾îÄ«À̺ê(archive)·Î º¯È¯ÇÕ´Ï´Ù. |
void |
pack (JarInputStream in,
OutputStream out)
JarInputStream¸¦ ÃëµæÇØ, Pack200 ¾îÄ«À̺ê(archive)·Î º¯È¯ÇÕ´Ï´Ù. |
SortedMap <String,
String > |
properties ()
ÀÌ ¿£ÁøÀÇ ÇÁ·ÎÆÛƼ ¼¼Æ®¸¦ ÃëµæÇÕ´Ï´Ù. |
void |
removePropertyChangeListener (PropertyChangeListener listener)
addPropertyChangeListener(java.beans.PropertyChangeListener) ¿¡ ÀÇÇØ Ãß°¡µÈ, PropertyChange À̺¥Æ®ÀÇ ¸®½º³Ê¸¦ »èÁ¦ÇÕ´Ï´Ù. |
ÇʵåÀÇ »ó¼¼ |
---|
static final String SEGMENT_LIMIT
Ư¼öÇÑ ÄÉÀ̽º·Î¼ °ª 0 ÀÌ Å¬·¡½º ¸¶´Ù 1°³ÀÇ ¼¼±×¸ÕÆ®(segment)¸¦ »ý¼ºÇϴµ¥ ´ëÇØ, °ª -1 ÀÌ ¸ðµç ÀÔ·Â ÆÄÀÏÀ» Æ÷ÇÔÇÑ ´ÜÀÏÀÇ ´ë±Ô¸ð ¼¼±×¸ÕÆ®(segment)¸¦ »ý¼ºÇÕ´Ï´Ù. ¾îÄ«À̺ê(archive) ¼¼±×¸ÕÆ®(segment)°¡ Ä¿Áö¸é fragmentation°¡ °¨¼ÒÇØ, ¾ÐÃàÀ²ÀÌ Çâ»óÇÕ´Ï´Ù¸¸, º¸´Ù ¸¹Àº ¸Þ¸ð¸®°¡ 󸮿¡ ÇÊ¿äÇÏ°Ô µË´Ï´Ù.
°¢ ¼¼±×¸ÕÆ®(segment)ÀÇ »çÀÌÁî´Â ¼¼±×¸ÕÆ®(segment)³»¿¡¼ Àü¼Û µÇ´Â °¢ ÀÔ·Â ÆÄÀÏÀÇ »çÀÌÁî ¹× ±× À̸§°ú Àü¼Û µÇ´Â ´Ù¸¥ ÇÁ·ÎÆÛƼÀÇ »çÀÌÁ °è»êÇÏ´Â °ÍÀ¸·Î ÃßÃøÇÒ ¼ö ÀÖ½À´Ï´Ù.
µðÆúÆ®´Â 1000000 (¹ÙÀÌÆ®)ÀÔ´Ï´Ù. À̰Ϳ¡ ÀÇÇØ Áß°£ Á¤µµÀÇ »çÀÌÁîÀÇ ÀÔ·Â JAR ÆÄÀÏÀ» ÀÖ´Â ¼¼±×¸ÕÆ®(segment)³»¿¡¼ Àü¼Û ÇÏ´Â °ÍÀÌ °¡´ÉÇÏ°Ô µË´Ï´Ù. ÀÌ °ª¿¡ÀÇÇØ packer ¹× unpacker ¸Þ¸ð¸® ¿ä°Çµµ Á¦Çѵ˴ϴÙ.
º¸Åë, ÀÌ Á¦ÇѾøÀÌ ÆÑ µÈ 10M ¹ÙÀÌÆ®ÀÇ JAR´Â ¾à 10 % ºÒÇÊ¿äÇÏ°Ô ÀÛ¾ÆÁý´Ï´Ù¸¸, packer¿¡´Â º¸´Ù ¸¹Àº Java heap (¼¼±×¸ÕÆ®(segment) Á¦ÇÑÀÇ ¾à 10 ¹è)°¡ ÇÊ¿äÇÏ°Ô µË´Ï´Ù.
static final String KEEP_FILE_ORDER
TRUE
·Î ¼³Á¤µÇ¸é, packer´Â ¼Ò½º ¾îÄ«À̺ê(archive)³»ÀÇ ¸ðµç ¿ä¼Ò¸¦ ¿øÀÇ ¼ø¼·Î Àü¼Û ÇÕ´Ï´Ù.
À̰ÍÀÌ FALSE
·Î ¼³Á¤µÇ¸é, packer´Â ¿ä¼Ò¸¦ ÀçÂ÷ Á¤·Ä ÇØ, Java ¾îÇø®ÄÉÀ̼ǿ¡ °üÇÑ À¯¿ëÇÑ Á¤º¸¸¦ Æ÷ÇÔÇÏÁö ¾Ê´Â JAR µð·ºÅ丮 ¿£Æ®¸®¸¦ »èÁ¦ÇÕ´Ï´Ù (ÀϹÝÀûÀ¸·Î À̰Ϳ¡ ÀÇÇØ ¾ÐÃàÀ²ÀÌ Çâ»óÇÑ´Ù).
µðÆúÆ®´Â TRUE
ÀÔ´Ï´Ù. À̰Ϳ¡ ÀÇÇØ
ÀÔ·Â Á¤º¸´Â º¸Á¸µË´Ï´Ù¸¸, Àü¼Û ÇÏ´Â ¾îÄ«À̺ê(archive)ÀÇ »çÀÌÁî°¡ ÇÊ¿äÀÌ»óÀ¸·Î Ä¿Áö´Â °æ¿ì°¡ ÀÖ½À´Ï´Ù.
static final String EFFORT
Ư¼öÇÑ °ª 0À» ÁöÁ¤Çϸé, packer´Â ¿øÀÇ JAR ÆÄÀÏÀ» ¾ÐÃàÇÏÁö ¾Ê°í Á÷Á¢ Ä«ÇÇÇÕ´Ï´Ù. JSR 200 Ç¥ÁØ¿¡¼´Â unpacker°¡ ÀÌ Æ¯¼öÇÑ ÄÉÀ̽º¸¦ ¾îÄ«À̺ê(archive) ÀüüÀÇ ÆÄ½º½º¸£·Î¼ ÀνÄÇÏ´Â °ÍÀÌ ¿ä±¸µË´Ï´Ù.
µðÆúÆ®´Â 5 ÀÔ´Ï´Ù. ÀÌ ¼³Á¤¿¡¼´Â Áß°£ Á¤µµÀÇ ½Ã°£À» ¼ÒºñÇØ Àû´çÇÑ ¾ÐÃàÀ» ÇÕ´Ï´Ù.
static final String DEFLATE_HINT
TRUE
¶Ç´Â FALSE
·Î ¼³Á¤µÇ¸é, packer´Â Ãâ·Â ¾îÄ«À̺ê(archive)³»¿¡¼ °Å±â¿¡ ÀÀÇÑ µðÇ÷¹ÀÌ¼Ç ÈùÆ®¸¦ ¼³Á¤ÇÕ´Ï´Ù. ¾îÄ«À̺ê(archive) ¿ä¼ÒÀÇ °³º°ÀÇ µðÇ÷¹ÀÌ¼Ç ÈùÆ®°¡ Àü¼Û µÉ °ÍÀº ¾ø½À´Ï´Ù.
ÀÌ ÇÁ·ÎÆÛƼ°¡ Ư¼öÇÑ Ä³¸¯ÅÍ ¶óÀÎ KEEP
·Î ¼³Á¤µÇ¸é, packer´Â ÀÔ·Â ¾îÄ«À̺ê(archive)³»ÀÇ ÀÌ¿ë °¡´ÉÇÑ ¿ä¼Ò ¸¶´Ù µ¶¸³ÇÑ µðÇ÷¹ÀÌ¼Ç ÈùÆ®¸¦ °áÁ¤ÇØ, ÈùÆ®¸¦ º°°³¿¡ Àü¼Û ÇÏ·Á°í ½ÃµµÇÕ´Ï´Ù.
µðÆúÆ®´Â KEEP
ÀÔ´Ï´Ù. À̰Ϳ¡ ÀÇÇØ
ÀÔ·Â Á¤º¸´Â º¸Á¸µË´Ï´Ù¸¸, Àü¼Û ÇÏ´Â ¾îÄ«À̺ê(archive)ÀÇ »çÀÌÁî°¡ ÇÊ¿äÀÌ»óÀ¸·Î Ä¿Áö´Â °æ¿ì°¡ ÀÖ½À´Ï´Ù.
unpack ÇÏ´Â jar ¿ä¼Ò¸¦ ¿Ã¹Ù¸£°Ô ¾ÐÃàÇϱâ À§Çؼ ÈùÆ®¸¦ ÀûÀýÈ÷ ó¸®ÇÏ´Â °ÍÀº unpacker ±¸Çö¿¡ ÀÇÁ¸ÇÕ´Ï´Ù.
ZIP ¶Ç´Â JAR ¿ä¼ÒÀÇ µðÇ÷¹ÀÌ¼Ç ÈùÆ®´Â ¿ä¼Ò°¡ ¾ÐÃàµÇ¾ú´ÂÁö, ±×´ë·Î Æ÷ÇԵǾú´ÂÁö¸¦ ³ªÅ¸³À´Ï´Ù.
static final String MODIFICATION_TIME
LATEST
·Î ¼³Á¤µÇ¸é, packer´Â
¿øÀÇ ¾îÄ«À̺ê(archive)³»ÀÇ ÀÌ¿ë °¡´ÉÇÑ Àü¿£Æ®¸®³»¿¡¼ ÃÖ½ÅÀÇ ¼öÁ¤ ½Ã°£, ¶Ç´Â °¢ ¼¼±×¸ÕÆ®(segment)³»ÀÇ ÀÌ¿ë °¡´ÉÇÑ Àü¿£Æ®¸®ÀÇ ÃÖ½ÅÀÇ ¼öÁ¤ ½Ã°£ÀÇ °áÁ¤À» ½ÃµµÇÕ´Ï´Ù. ÀÌ ´ÜÀÏÀÇ °ªÀº ¼¼±×¸ÕÆ®(segment)ÀÇ ÀϺημ ¼Û½ÅµÇ¾î °¢ ¼¼±×¸ÕÆ®(segment) SEGMENT_LIMIT
³»ÀÇ ¸ðµç ¿£Æ®¸®¿¡ Àû¿ëµË´Ï´Ù.
À̰Ϳ¡ ÀÇÇØ ÀνºÅç µÈ ÆÄÀÏ ¸ðµç °ÍÀÌ ´ÜÀÏÀÇ ³¯Â¥¿Í ½Ã°£·Î ¼³Á¤µÇ´Â ´ë½Å¿¡ Àü¼Û ÇÏ´Â ¾îÄ«À̺ê(archive)ÀÇ »çÀÌÁ Á¶±Ý °¨¼Ò½Ãų ¼ö°¡ ÀÖ½À´Ï´Ù.
ÀÌ ÇÁ·ÎÆÛƼ¸¦ Ư¼öÇÑ Ä³¸¯ÅÍ ¶óÀÎ KEEP
·Î ¼³Á¤Çϸé, packer´Â ÀÔ·Â ¿ä¼Ò ¸¶´Ù º°°³ÀÇ ¼öÁ¤ ½Ã°£À» Àü¼Û ÇÕ´Ï´Ù.
µðÆúÆ®´Â KEEP
ÀÔ´Ï´Ù. À̰Ϳ¡ ÀÇÇØ
ÀÔ·Â Á¤º¸´Â º¸Á¸µË´Ï´Ù¸¸, Àü¼Û ÇÏ´Â ¾îÄ«À̺ê(archive)ÀÇ »çÀÌÁî°¡ ÇÊ¿äÀÌ»óÀ¸·Î Ä¿Áö´Â °æ¿ì°¡ ÀÖ½À´Ï´Ù.
Ãâ·Â ÆÄÀÏÀÇ °¢ ¿ä¼ÒÀÇ ¼öÁ¤ ½Ã°£À» ¿Ã¹Ù¸£°Ô ¼³Á¤Çϱâ À§Çؼ ÀûÀýÇÑ Ã³¸®¸¦ ½ÇÇàÇÏ´Â °ÍÀº unpacker ±¸Çö¿¡ ÀÇÁ¸ÇÕ´Ï´Ù.
SEGMENT_LIMIT
,
Á¤¼ö Çʵ尪 static final String PASS_FILE_PFX
½Ã½ºÅÛ ÆÄÀÏ separator°¡ JAR ÆÄÀÏ separator ¡¸/¡¹À¸·Î ¿Å°ÜÁö´Â Á¡À» Á¦¿ÜÇØ, ÆÐ½º¸íÀÇ º¯È¯Àº ÇàÇØÁöÁö ¾Ê½À´Ï´Ù.
»ý¼ºµÇ´Â ÆÄÀϸíÀº JAR ÆÄÀÏ¿¡ ±âÀçµÈ ij¸¯ÅÍ ¶óÀΰú Á¤È®ÇÏ°Ô ÀÏÄ¡ÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù.
ÇÁ·ÎÆÛƼ°ªÀÌ µð·ºÅ丮¸íÀÇ °æ¿ì, ±× µð·ºÅ丮³»ÀÇ ¸ðµç ÆÄÀϵµ °Ç³×¹Þ½À´Ï´Ù.
·Ê:
Map p = packer.properties();
p.put(PASS_FILE_PFX+0, "mutants/Rogue.class");
p.put(PASS_FILE_PFX+1, "mutants/Wolverine.class");
p.put(PASS_FILE_PFX+2, "mutants/Storm.class");
# Pass all files in an entire directory hierarchy:
p.put(PASS_FILE_PFX+3, "police/");
static final String UNKNOWN_ATTRIBUTE
ERROR
,
STRIP
¹× PASS
ÀÔ´Ï´Ù.
ij¸¯ÅÍ ¶óÀÎ ERROR
´Â
ÆÑ Á¶ÀÛÀÌ ÀüüÀûÀ¸·Î ½ÇÆÐÇØ, ÀûÀýÇÑ ¼³¸íÀÌ ³ªÅ¸³ª´Â °ÍÀ»ÀǹÌÇÕ´Ï´Ù. ij¸¯ÅÍ ¶óÀÎ STRIP
´Â
¼Ó¼ºÀÌ »èÁ¦µÇ´Â °ÍÀ»ÀǹÌÇÕ´Ï´Ù. ij¸¯ÅÍ ¶óÀÎ PASS
´Â
Ŭ·¡½º ÆÄÀÏ Àüü°¡ (resource file¿Í °°ÀÌ) ¾ÐÃà¾øÀÌ °Ç³×¹Þ¾Æ ÀûÀýÇÑ °æ°í°¡ ³ªÅ¸³ª´Â °ÍÀ»ÀǹÌÇÕ´Ï´Ù. À̰ÍÀÌ, ÀÌ ÇÁ·ÎÆÛƼÀÇ ±âº»°ª
ÀÔ´Ï´Ù.
·Ê:
Map p = pack200.getProperties();
p.put(UNKNOWN_ATTRIBUTE, ERROR);
p.put(UNKNOWN_ATTRIBUTE, STRIP);
p.put(UNKNOWN_ATTRIBUTE, PASS);
static final String CLASS_ATTRIBUTE_PFX
¿¹¸¦ µé¾î, pack.class.attribute.SourceFile=RUH
¿¡´Â ÀÌ ¿É¼ÇÀÇ È¿°ú°¡ »ðÀԵǾî
ÀÖ½À´Ï´Ù.
Ư¼öÇÑ Ä³¸¯ÅÍ ¶óÀÎ ERROR
,
STRIP
¹× PASS
µµ, UNKNOWN_ATTRIBUTE
¿Í
°°Àº ¹Ì¸¦ °¡Áö´Â °ÍÀ¸·Î¼ Çã°¡µÇ°í ÀÖ½À´Ï´Ù. »ç¿ëÀÚ´Â À̰ÍÀ» »ç¿ëÇÏ´Â °ÍÀ¸·Î ƯÁ¤ÀÇ ¼Ó¼ºÀ» (Ŭ·¡½º ¾ÐÃà¾øÀÌ) ºñÆ® ´ÜÀ§·Î °ÅºÎÇϰųª ¾ø¾Ö°Å³ª °Ç³×Áְųª ÇÒ ¼ö ÀÖ½À´Ï´Ù.
´ÙÀ½°ú °°Àº Äڵ带 »ç¿ëÇØ, JCOV¿ëÀÇ ¼Ó¼ºÀ» Áö¿ø ÇÒ ¼ö ÀÖ½À´Ï´Ù.
Map p = packer.properties();
p.put(CODE_ATTRIBUTE_PFX+"CoverageTable", "NH[PHHII]");
p.put(CODE_ATTRIBUTE_PFX+"CharacterRangeTable", "NH[PHPOHIIH]");
p.put(CLASS_ATTRIBUTE_PFX+"SourceID", "RUH");
p.put(CLASS_ATTRIBUTE_PFX+"CompilationID", "RUH");
´ÙÀ½°ú °°Àº Äڵ带 »ç¿ëÇØ, µð¹ö±× ¼Ó¼ºÀ» ¾ø¾Ù ¼ö°¡ ÀÖ½À´Ï´Ù.
Map p = packer.properties();
p.put(CODE_ATTRIBUTE_PFX+"LineNumberTable", STRIP);
p.put(CODE_ATTRIBUTE_PFX+"LocalVariableTable", STRIP);
p.put(CLASS_ATTRIBUTE_PFX+"SourceFile", STRIP);
static final String FIELD_ATTRIBUTE_PFX
pack.field.attribute.Deprecated=
¿¡´Â ÀÌ ¿É¼ÇÀÇ È¿°ú°¡ »ðÀԵǾî
ÀÖ½À´Ï´Ù. Ư¼öÇÑ Ä³¸¯ÅÍ ¶óÀÎ ERROR
,
STRIP
¹× PASS
µµ
»ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.
CLASS_ATTRIBUTE_PFX
,
Á¤¼ö Çʵ尪 static final String METHOD_ATTRIBUTE_PFX
pack.method.attribute.Exceptions=NH[RCH]
¿¡´Â ÀÌ ¿É¼ÇÀÇ È¿°ú°¡ »ðÀԵǾî
ÀÖ½À´Ï´Ù. Ư¼öÇÑ Ä³¸¯ÅÍ ¶óÀÎ ERROR
,
STRIP
¹× PASS
µµ
»ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.
CLASS_ATTRIBUTE_PFX
,
Á¤¼ö Çʵ尪 static final String CODE_ATTRIBUTE_PFX
pack.code.attribute.LocalVariableTable=NH[PHOHRUHRSHH]
¿¡´Â ÀÌ ¿É¼ÇÀÇ È¿°ú°¡ »ðÀԵǾî
ÀÖ½À´Ï´Ù. Ư¼öÇÑ Ä³¸¯ÅÍ ¶óÀÎ ERROR
,
STRIP
¹× PASS
µµ
»ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.
CLASS_ATTRIBUTE_PFX
,
Á¤¼ö Çʵ尪 static final String PROGRESS
PropertyChangeListener
¿Í
ÇÔ²² ÀÌ ÇÁ·ÎÆÛƼ¸¦ °¨½ÃÇϵµ·ÏÀÇÇØ ÁÖ¼¼¿ä.
unpacker´Â ÃÖÀúÇÑ, ÆÐÅ· Á¶ÀÛÀÇ ÃÖÃÊ·Î ÁøÃ´À» 0 ¿¡ Á¶ÀÛÀÇ ¸¶Áö¸·¿¡ ÁøÃ´À» 100 À¸·Î ¼³Á¤ÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù.
addPropertyChangeListener(java.beans.PropertyChangeListener)
,
Á¤¼ö Çʵ尪 static final String KEEP
DEFLATE_HINT
,
MODIFICATION_TIME
,
Á¤¼ö Çʵ尪 static final String PASS
UNKNOWN_ATTRIBUTE
,
CLASS_ATTRIBUTE_PFX
,
FIELD_ATTRIBUTE_PFX
,
METHOD_ATTRIBUTE_PFX
,
CODE_ATTRIBUTE_PFX
,
Á¤¼ö Çʵ尪 static final String STRIP
UNKNOWN_ATTRIBUTE
,
CLASS_ATTRIBUTE_PFX
,
FIELD_ATTRIBUTE_PFX
,
METHOD_ATTRIBUTE_PFX
,
CODE_ATTRIBUTE_PFX
,
Á¤¼ö Çʵ尪 static final String ERROR
UNKNOWN_ATTRIBUTE
,
CLASS_ATTRIBUTE_PFX
,
FIELD_ATTRIBUTE_PFX
,
METHOD_ATTRIBUTE_PFX
,
CODE_ATTRIBUTE_PFX
,
Á¤¼ö Çʵ尪 static final String TRUE
KEEP_FILE_ORDER
,
DEFLATE_HINT
,
Á¤¼ö Çʵ尪 static final String FALSE
KEEP_FILE_ORDER
,
DEFLATE_HINT
,
Á¤¼ö Çʵ尪 static final String LATEST
MODIFICATION_TIME
,
Á¤¼ö Çʵ尪 ¸Þ¼µåÀÇ »ó¼¼ |
---|
SortedMap <String, String > properties()
ÇÁ·ÎÆÛƼ ¸Ê¿¡´Â Á¤ÀÇ ³¡³ ±¸Çö °íÀ¯ÀÇ ÇÁ·ÎÆÛƼ³ª µðÆúÆ®ÀÇ ÇÁ·ÎÆÛƼ¸¦ Æ÷ÇÔÇÒ ¼ö ÀÖ½À´Ï´Ù. »ç¿ëÀÚ´Â ±âÁ¸ÀÇ ÇÁ·ÎÆÛƼ¸¦ º¯°æÇϱâ Àü¿¡ Á¤º¸¸¦ È®ÀÎÇØ ¹Ì¸¦ ÃæºÐÈ÷ ÀÌÇØÇÏ´Â °ÍÀÌ ±ÇÀ¯¹Þ°í ÀÖ½À´Ï´Ù.
±¸Çö °íÀ¯ÀÇ ÇÁ·ÎÆÛƼ¿¡´Â com. ±×¸®°í ½ÃÀ۵Ǵ ±¸ÇöÀÚ°¡ °ü·ÃµÈ ÆÐŰÁö¸í, ¶Ç´Â À¯»çÇÑ Á¢µÎ»ç°¡ ºÎ°¡µË´Ï´Ù. pack. ¹× unpack. ±×¸®°í ½ÃÀ۵Ǵ ¸ðµç ÇÁ·ÎÆÛƼ¸íÀº ÀÌ API ¿ëÀ¸·Î ¿¹¾àµÇ°í ÀÖ½À´Ï´Ù.
ºÒ¸íÇÑ ÇÁ·ÎÆÛƼ´Â ¹ÌÁöÁ¤ÀÇ ¿¡·¯·Î¼ ¹«½Ã ¶Ç´Â °ÅºÎÇÒ ¼ö ÀÖ½À´Ï´Ù. ¹«È¿ÀÎ ¿£Æ®¸®¿¡ÀÇÇØ »ó¼¼ ºÒ¸í ¿¡·¯°¡ ¹ß»ýµÇ´Â °æ¿ì°¡ ÀÖ½À´Ï´Ù.
¸®ÅϵÈ
¸ÊÀº ¿É¼Ç SortedMap
¸¦
¸ðµÎ ±¸ÇöÇÕ´Ï´Ù.
void pack(JarFile in, OutputStream out) throws IOException
ÀÔ·ÂÀ» ´Ý½À´Ï´Ù¸¸, Ãâ·ÂÀº ´ÝÁö ¾Ê½À´Ï´Ù (Pack200 ¾îÄ«À̺ê(archive)´Â Ãß°¡ °¡´É).
in
- JarFileout
- OutputStream
IOException
- ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ìvoid pack(JarInputStream in, OutputStream out) throws IOException
ÀÔ·ÂÀ» ´Ý½À´Ï´Ù¸¸, Ãâ·ÂÀº ´ÝÁö ¾Ê½À´Ï´Ù (Pack200 ¾îÄ«À̺ê(archive)´Â Ãß°¡ °¡´É).
JAR MANIFEST ÆÄÀÏ ¹× ±×°ÍÀ» Æ÷ÇÔÇÑ µð·ºÅ丮¿¡¼ ¼öÁ¤ ½Ã°£ ¹× µðÇ÷¹ÀÌ¼Ç ÈùÆ® ¼Ó¼ºÀ» »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù.
in
- JarInputStreamout
- OutputStream
IOException
- ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ìMODIFICATION_TIME
,
DEFLATE_HINT
void addPropertyChangeListener(PropertyChangeListener listener)
listener
- ÇÁ·ÎÆÛƼÀÇ º¯°æ½Ã¿¡ È£ÃâµÇ´Â °´Ã¼properties()
,
PROGRESS
void removePropertyChangeListener(PropertyChangeListener listener)
addPropertyChangeListener(java.beans.PropertyChangeListener)
¿¡ ÀÇÇØ Ãß°¡µÈ, PropertyChange À̺¥Æ®ÀÇ ¸®½º³Ê¸¦ »èÁ¦ÇÕ´Ï´Ù.
listener
- »èÁ¦µÇ´Â PropertyChange ¸®½º³ÊaddPropertyChangeListener(java.beans.PropertyChangeListener)
|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
ÀÌÀü Ŭ·¡½º ´ÙÀ½ Ŭ·¡½º | ÇÁ·¹ÀÓÀ¸·Î ÇÁ·¹ÀÓ ¾øÀÌ | |||||||||
°³¿ä: NESTED | Çʵå | constructor¡¡ ¡¡ | ¸Þ¼µå | »ó¼¼: Çʵå | constructor¡¡ ¡¡ | ¸Þ¼µå |
Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy µµ ÂüÁ¶ÇϽʽÿÀ.