Monday, February 12, 2007

Classpath

Setting the classpath

For example If I have the class
/home/user01/Test.java
/home/user01/f1/TestA .java
/home/user01/f2/TestB .java
/home/user01/f3/TestC .java

TestA {
     public void show() {
           System.out.println("Show from TestA");
     }


TestB {
     public void show() {
           System.out.println("Show from TestB");
     }
}


TestC {
     public void show() {
           System.out.println("Show from TestC");
     }
}

Test {
     public static void main(Stirng atr[]) {
               TestA ta = new TestA();
               TestB tb = new TestB();
               TestC tc = new TestC();
               ta.show();
               tb.show();
               tc.show();

     }
}

If each class reside in different folder we need to set the classpath for all the file, then only the file got compile

[user01@localhost user01] java Test.java
the above command will lead you with error messages

Test.java4: cannot find symbol
symbol : class TestB
location: class TestB
...................

To Compile the above class
javac -classpath /home/user01/f1:/home/user01/f2:/home/user01/f3 Test.java
To Execute the above class
java -classpath /home/user01/f1:/home/user01/f2:/home/user01/f3 Test

No comments: