Download presentation
Presentation is loading. Please wait.
1
Java tools Java programming ID1006 20 Sep 2010
2
javac – Java compiler Java source code files: *.java Java byte code files: *.class Java resource archives: *.jar javac compiles.java files into.class files Can be run interactively or from build tools
3
javac – The Java compiler.java javac.class java (JVM) Source code textCompilationByte codeExecution
4
javac – The Java compiler javac [options][sourcefiles][classes][@argfiles] i.e.: javac Parser.java -classpath or environment variable CLASSPATH
5
Classpath asg1/asg2/asg3/ / SET CLASSPATH=.;..\asg1;..\asg2;..\asg3 Token.class WordToken.class PunctToken.class TextMeter.class Parser.class LixTest.class LixMeter.class FleschTest.class FleschMeter.class SyllableCounter.class
6
javadoc Compiles documentation from Java source code.java javadoc.html.css... Web browser Source code textCompilationHTML pagesReading
7
javadoc Comments /**... */ before the documented item /** * Computes the square of an integer. * @param i The integer to square * @return The squared value of its argument */ public int square(int i) { return i*i; }
8
javadoc @param name desc – documents arguments @return desc – documents return value @throws exception desc – documents the conditions under which an exception is thrown
9
javadoc http://download.oracle.com/javase/6/docs/t echnotes/guides/javadoc/index.htmlhttp://download.oracle.com/javase/6/docs/t echnotes/guides/javadoc/index.html http://download.oracle.com/javase/6/docs/t echnotes/tools/windows/javadoc.html#java doctags
10
apt a nnotation p rocessing t ool Allows the adding of metadata to code Annotations do not alter the meaning of the code, but......libraries and other tools may alter their behaviour in response to annotations
11
apt /** * Describes the Request-For-Enhancement(RFE) that led * to the presence of the annotated API element. */ public @interface RequestForEnhancement { int id(); String synopsis(); String engineer() default "[unassigned]"; String date() default "[unimplemented]"; } This is an annotation type
12
apt /** * Describes the Request-For-Enhancement(RFE) that led * to the presence of the annotated API element. */ public @interface RequestForEnhancement { int id(); String synopsis(); String engineer() default "[unassigned]"; String date() default "[unimplemented]"; } @-sign
13
apt /** * Describes the Request-For-Enhancement(RFE) that led * to the presence of the annotated API element. */ public @interface RequestForEnhancement { int id(); String synopsis(); String engineer() default "[unassigned]"; String date() default "[unimplemented]"; } @-sign Default values
14
apt @RequestForEnhancement( id = 2868724, synopsis = "Enable time-travel", engineer = "Mr. Peabody", date = "4/1/3007" ) public static void travelThroughTime(Date destination) {... }
15
apt @RequestForEnhancement( id = 2868724, synopsis = "Enable time-travel", engineer = "Mr. Peabody", date = "4/1/3007" ) public static void travelThroughTime(Date destination) {... } The annotation preceeds the annotated method
16
apt @RequestForEnhancement( id = 2868724, synopsis = "Enable time-travel", engineer = "Mr. Peabody", date = "4/1/3007" ) public static void travelThroughTime(Date destination) {... } The annotation preceeds the annotated method Ordinary Java method
17
apt Annotations can be used to control –Automated software testing –Documentation tools –Automated software configuration –and more...
18
apt http://download.oracle.com/javase/6/docs/techno tes/guides/language/annotations.html
19
jar Java archive Stores class files, images, sounds etc in a single file Supports compression Used to package libraries and applications Fetch-and-run over the Internet
20
jar Create an archive: jar cf jarfile inputfile... jar cf Foo.jar *.class *.jpg CreateNext argument is the file name of the archive Files to be copied into the archive
21
jar Create an archive: jar cf jarfile inputfile... jar cf Foo.jar *.class *.jpg Unpack an archive: jar xf jarfile jar xf Foo.jar
22
jar Create an archive: jar cf jarfile inputfile... jar cf Foo.jar *.class *.jpg Unpack an archive: jar xf jarfile jar xf Foo.jar Run from an archive*: java –jar jarfile java –jar Foo.jar * Requires jar manifest meta-data: main class and classpath
23
jar http://download.oracle.com/javase/6/docs/t echnotes/guides/jar/index.html http://download.oracle.com/javase/6/docs/t echnotes/tools/windows/jar.html
24
javap Java disassembler Shows class fields and methods javap [ options ] classname -public|-protected|-private|-package -s show internal signatures -c show byte code
25
javap http://download.oracle.com/javase/6/docs/t echnotes/tools/windows/javap.html
26
RMI Remote Method Invocation One JVM calls methods on a remote JVM Client and service
27
Remote Method Invocation Jvm AJvm B
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.