Object-Oriented Programming with Java Lecture Notes

29 January 2008 • Java Tools


Outline

  • Java environments.

    • Documentation

  • Java Tools.

    • IDEs

    • Analysis and testing.

hand tools

The Java Environment

a simple java environment

Java Components

java components

Java Versions

Java Environments

Documentation

Documentation Types

IDEs

Java IDEs

DrJava

Example.

yer basic drjava display

Example..

drjava quick help

Example...

an error

Example....

a java repl

Analysis and Testing

FindBugs

Example.

a problem

Example..

a fix

Example...

another problem

Example....

an other fix

Example.....

clean!

Example......

emacs-based findbugs

FindBugs on the Cheap

Oh, One Last Thing

$ ls
AnonymousInnerClassTest.java  ForEachTest.java      StaticInnerClassTest.java
CloneTest.java                InnerClassTest2.java  TimerTest.java
EmployeeSortTest.java         InnerClassTest.java

$ findbugs -textui *.class
Exception in thread "main" java.io.IOException: IOException while scanning codebases
    at findbugs.FindBugs2.execute(FindBugs2.java:187)
    at findbugs.FindBugs.runMain(FindBugs.java:1521)
    at findbugs.FindBugs2.main(FindBugs2.java:731)
Caused by: findbugs.classfile.ResourceNotFoundException: Resource not found: 
    /home/rclayton/new-public-html/s08-310/code/java/chapter-6/*.class
    at findbugs.classfile.impl.SingleFileCodeBase.getClassDescriptor(SingleFileCodeBase.java:222)
    at findbugs.classfile.impl.SingleFileCodeBaseEntry.getClassDescriptor(SingleFileCodeBaseEntry.java:61)
    at findbugs.classfile.impl.ClassPathBuilder.build(ClassPathBuilder.java:229)
    at findbugs.FindBugs2.buildClassPath(FindBugs2.java:432)
    at findbugs.FindBugs2.execute(FindBugs2.java:160)
    ... 2 more

$ for i in *.java ; do javac $i ; done

$ findbugs -textui *.class
M B Eq: Employee defines compareTo(Employee) and uses Object.equals()  At EmployeeSortTest.java:[line 9]
Warnings generated: 1

$ 

But Rather

$ ls
AnonymousInnerClassTest.java  ForEachTest.java      StaticInnerClassTest.java
CloneTest.java                InnerClassTest2.java  TimerTest.java
EmployeeSortTest.java         InnerClassTest.java

$ findbugs -textui *.class
Can't find *.class.

$ for i in *.java ; do javac $i ; done

$ findbugs -textui *.class
M B Eq: Employee defines compareTo(Employee) and uses Object.equals()  At EmployeeSortTest.java:[line 9]
Warnings generated: 1

$ 

JUnit

Example.

Example..

Example...

Example....

Example.....

Testing Tips

Summary

References

Credits


This page last modified on 10 September 2007.

This work's CC license.