ÀÚ¹Ù ÄÄÆÄÀϰú ½ÇÇà ¿¡ »ç¿ëµÇ¾îÁö´Â javac, java ¸í·É¾îÀÇ ¿É¼Ç .
javac - ÀÚ¹ÙÄÄÆÄÀÏ·¯·Î½á, ÀÚ¹ÙÄڵ带 ÀÛ¼ºÇÑ ¼Ò½ºÆÄÀÏ(.java)À» ÀÚ¹Ù °¡»ó¸Ó½ÅÀÌ ÀνÄÇÒ¼ö ÀÖ´Â ¹ÙÀÌÆ® ÄÚµå(.class)
ŸÀÔÀ¸·Î º¯È¯½ÃÄÑÁÖ´Â ¸í·É¾î ÀÔ´Ï´Ù.
»ç¿ë¹ý: javac <options> <souce files>
¿¹¸¦µé¾î, Hello.java, Greeting.java µÎ°³ÀÇ ÆÄÀÏÀÌ Á¸ÀçÇÑ´Ù¸é,
javac Hello.java Greeting.java
javac *.java (*À» »ç¿ëÇØ¼, ¸ðµç È®ÀåÀÚ°¡ .javaÀÎ ÆÄÀÏÀ» ÄÄÆÄÀÏÇÒ¼ö ÀÖ´Ù.)
1) ¿É¼Ç:
a) -classpath:
-classpath(cp) path(ÆÄÀÏ Àý´ë °æ·Î):
ÄÄÆÄÀÏ·¯°¡ ÄÄÆÄÀÏ Çϱâ À§Çؼ ÇÊ¿ä·Î ÇÏ´Â ÂüÁ¶ÇÒ Å¬·¡½º ÆÄÀϵéÀ» ã±â À§Çؼ ÄÄÆÄÀϽà ÆÄÀÏ °æ·Î¸¦ ÁöÁ¤ÇØÁÖ´Â
¿É¼Ç. ¿¹¸¦ µé¾î, Hello.javaÆÄÀÏÀÌ C:\Java µð·ºÅ͸®¿¡ Á¸ÀçÇϰí, ÇÊ¿äÇÑ Å¬·¡½º ÆÄÀϵéÀÌ C:\Java\Engclasses¿¡ À§Ä¡ÇÑ´Ù¸é,
javac -classpath C:\Java\Engclasses C:\Java\Hello.java ·Î ÇØÁÖ¸é µÈ´Ù. ¸¸¾à ÂüÁ¶ÇÒ Å¬·¡½º ÆÄÀϵéÀÌ C:\Java\Engclasses¿ÜÀÇ
´Ù¸¥ µð·ºÅ͸®¿¡µµ Á¸ÀçÇÑ´Ù¸é, C:\Java\Korclasses Àϰæ¿ì,
javac -classpath C:\Java\Engclasses;C;\Java\Korclasses C:\Java\Hello.java
±×¸®°í, ÇöÀç µð·ºÅ͸®¿ª½Ã Æ÷ÇÔÇÏ°í ½Í´Ù¸é,
javac -classpath .;C:\Java\Engclasses;C;\Java\Korclasses C:\Java\Hello.java
±âº»ÀûÀ¸·Î, dos¿¡¼´Â .´Â ÇöÀç µð·ºÅ͸®¸¦ ÀǹÌÇϰí, ..´Â ÇöÀç µð·ºÅ͸®ÀÇ »óÀ§µð·ºÅ͸®¸¦ ÀǹÌÇÑ´Ù.
¶ÇÇÑ classpath ´ë½Å ´ÜÃà¾îÀÎ cp¸¦ »ç¿ëÇØµµ µÈ´Ù.
javac -cp C:\Java\Engclasses C:\Java\Hello.java
b) -d:
-d directory
Ŭ·¡½º ÆÄÀÏÀ» »ý¼ºÇÒ ·çÆ® µð·ºÅ͸®¸¦ ÁöÁ¤ÇÕ´Ï´Ù.
±âº»ÀûÀ¸·Î ÄÄÆÄÀÏ·¯´Â -d¿É¼ÇÀ» ÁÖÁö ¾ÊÀ¸¸é, ¼Ò½ºÆÄÀÏÀÌ À§Ä¡ÇÑ µð·ºÅ͸®¿¡ Ŭ·¡½º ÆÄÀÏÀ» »ý¼º½Ãŵ´Ï´Ù.
¿¹¸¦ µé¾î, Hello.javaÆÄÀÏÀÌ C:\Java µð·ºÅ͸®¿¡ Á¸ÀçÇϰí Ŭ·¡½º ÆÄÀÏÀÇ ·çÆ®µð·ºÅ͸®¸¦ C:\Java\Classfiles¶ó°í Çϸé,
javac -d C:\Java\Classfiles C:\Java\Hello.java ÀÔ´Ï´Ù.
¸¸¾à -d ¿É¼ÇÀ» »ç¿ëÇÏ·Á°í Çϴµ¥, ·çÆ®µð·ºÅ͸®(À§¿¹¿¡¼´Â C:\Java\Classfiles) °¡ Á¸Àç ÇÏÁö ¾Ê´Â´Ù¸é,
"The system cannot find the path specified"¶ó´Â ¿¡·¯ ¸Þ½ÃÁö¸¦ º¸°Ô µË´Ï´Ù.
ÇöÀç ÀÛ¾÷ µð·ºÅ͸®°¡ C:\Java\Classfiles ¿¡ À§Ä¡Çϸé,
javac -d .\Classfiles Hello.java ¿Í °°ÀÌ »ó´ë µð·ºÅ͸®·Î Ç¥ÇöÇÒ¼ö ÀÖ½À´Ï´Ù.
c) -encoding:
-encoding encoding name
¼Ò½º ÆÄÀÏ¿¡ »ç¿ëµÈ ¹®ÀÚ¿ ÀÎÄÚµùÀ» ¼³Á¤ÇÕ´Ï´Ù.
¸¸¾à À§¿É¼ÇÀÌ ¼³Á¤µÇ¾î ÀÖÁö ¾ÊÀ¸¸é, Ç÷¡ÆûÀÇ ±âº»ÀûÀÎ ÄÁ¹öÅͰ¡ »ç¿ëµÇ¾î Áý´Ï´Ù.
d) -g:
¸ðµç µð¹ö±ë Á¤º¸¸¦ »ý¼º½Ãŵ´Ï´Ù.
¸¸¾à À§¿É¼ÇÀÌ ¼³Á¤µÇ¾î ÀÖÁö ¾ÊÀ¸¸é, ±âº»ÀûÀ¸·Î, ¶óÀγѹö¸¸ »ý¼º½Ãŵ´Ï´Ù.
-g:none: µð¹ö±ë Á¤º¸¸¦ ÀüÇô »ý¼º ½ÃŰÁö ¾Ê½À´Ï´Ù.
-g:{lines, vars, source}:
À§Ã³·³ ¸í½ÃÀûÀ¸·Î, ¸î¸î µð¹ö±ë Á¤º¸¸¦ »ý¼º½Ãų¼ö ÀÖ½À´Ï´Ù.
linesÀº ¶óÀÎÁ¤º¸, vars´Â Áö¿ªº¯¼ö, sounce´Â ¼Ò½º ÆÄÀÏ Á¤º¸¸¦ ³ªÅ¸³À´Ï´Ù.
e) -nowarn:
°æ°í ¸Þ½ÃÁö (warning message)¸¦ »ý¼º½ÃŰÁö ¾Ê½À´Ï´Ù.
f) -verbose:
ÄÄÆÄÀÏ·¯¿Í ¸µÄ¿°¡ ÇöÀç ¾î´À ¼Ò½ºÆÄÀÏÀÌ ÄÄÆÄÀϵǰí ÀÖ°í, ¾î´À ÆÄÀÏÀÌ ¸µÅ©µÇ°í ÀÖ´ÂÁö
±×Á¤º¸¸¦ Ãâ·ÂÇÑ´Ù.
h) -deprecation:
¼Ò½º Äڵ峻¿¡¼, »ç¿ëµÇ¾îÁø deprecated APIÀÇ À§Ä¡ ¸¦ Ãâ·Â ÇÕ´Ï´Ù.
ex)
C:\Java> javac World.java
Note: World.java uses a deprecated API. Recompile with "-deprecation" for details
.
1 warning
C:\Java> javac -deprecation World.java
World.java:52: Note: The method java.awt.Dimension size() in class java.awt.Compon
ent has been deprecated.
Dimension d = size();
Note: World.java uses a deprecated API. Please consult the documentation for a be
tter alternative.
i) -sourcepath:
-sourcepath ¼Ò½ºÆÐ½º
¼Ò½ºÆÄÀÏÀÇ À§Ä¡¸¦ ÁöÁ¤ÇÕ´Ï´Ù.
j) -target:
-target ÀÚ¹Ù¹öÁ¯
ÁöÁ¤µÈ ÀÚ¹Ù¹öÁ¯ÀÇ VM¿¡¼ ÀÛµ¿ µÇ¾îÁöµµ·Ï Ŭ·¡½ºÆÄÀÏÀ» »ý¼º ½Ãŵ´Ï´Ù.
1.1
jvm 1.1 ¹öÁ¯¿¡¼ ȣȯµÇ¾îÁú¼ö Àִ Ŭ·¡½º ÆÄÀÏ»ý¼º
1.2
jvm 1.2 ¹öÁ¯¿¡¼ ȣȯµÇ¾îÁú¼ö Àִ Ŭ·¡½º ÆÄÀÏ»ý¼º
1.3
jvm 1.3 ¹öÁ¯¿¡¼ ȣȯµÇ¾îÁú¼ö Àִ Ŭ·¡½º ÆÄÀÏ »ý¼º
ex)
javac -target 1.2 Helloworld.java
k) -bootclasspath ÆÐ½º:
ƯÁ¤ÇÑ bootstrap¶Ç´Â È®Àå Ŭ·¡½º¸¦ ÁöÁ¤ÇÒ¼ö ÀÖ´Ù.
±âº»ÀûÀ¸·Î, ÀÚ¹ÙÄÄÆÄÀÏ·¯´Â javac(ÄÄÆÄÀÏ·¯¸í·É)ÀÌ ¼³Ä¡µÈ Ç÷¡ÆûÀÇ bootstrap°ú È®ÀåŬ·¡½ºµéÀ» ÅëÇØ¼, ÄÄÆÄÀÏÀÛ¾÷À» ¼öÇàÇÏÁö¸¸,
bootclasspath ¿É¼ÇÀ» »ç¿ëÇϸé, cross-compilingÀ̶ó°í ÇØ¼, ´Ù¸¥ ÀÚ¹ÙÇ÷¡ÆûÀÇ bootstrap°ú È®ÀåŬ·¡½ºµéÀ» ÅëÇØ¼, ÄÄÆÄÀÏ ÇÒ¼ö ÀÖ´Â ±â´ÉÀ» Áö¿øÇÑ´Ù.
¿¹¸¦µé¾î,
javac -target 1.1 -bootclasspath jdk1.1.7/lib/classes.zip -extdirs "" OldCode.java
ÄÄÆÄÀÏ·¯¿¡°Ô ÇöÀç ÀÚ½ÅÀÇ bootstrapÀ» »ç¿ëÇÏÁö ¸»°í, jdk1.1.7/lib/classes.zip bootstrapŬ·¡½ºµéÀ» »ç¿ëÇØ¼ ÄÄÆÄÀÏ Ç϶ó°í
¸í·ÉÇϴ°ÍÀÌ´Ù.
Âü°í·Î, ¸ð¹ÙÀÏÀÚ¹Ù¿¡¼, ¸ð¹ÙÀÏÆù¿¡ ¼³Á¤µÈ, jvm¿¡ ¸Âµµ·Ï, ¼Ò½ºÄڵ带 ÄÄÆÄÀÏÇϱâ À§Çؼ, ÁÖ·Î »ç¿ëµÇ¾îÁö´Â ¿É¼ÇÀÌ´Ù.
l) -extdirs µð·ºÅ͸®:
ƯÁ¤ÇÑ, È®Àå µð·ºÅ丮¸¦ ÁöÁ¤ÇÑ´Ù.cross-compiling½Ã ÁÖ·Î, »ç¿ëµÇ¾îÁö´Â ¿É¼ÇÀ̸é, °¢µð·ºÅ͸®µéÀº ÄÝ·Ð(:)¿¡ ÀÇÇØ¼, ºÐ¸®µÇ¾îÁø´Ù.
ÄÄÆÄÀϽÃ, ±â¼úÇÑ µð·ºÅ͸®ÀÇ Å¬·¡½º ÆÄÀÏÀ» ÂüÁ¶ÇÑ´Ù.