95 import java.rmi.server.UnicastRemoteObject; 96 public class Main implements MainI { 97 public int doIt(A a, B b) { 98 return a.f(b) + b.f(a); 99 } 100 public static void main(String args[]) throws Exception { 101 Main impl = new Main(); 102 try { 103 MainI stub = (MainI) UnicastRemoteObject.exportObject(impl); 104 int result = stub.doIt(new A(), new B()); 105 System.exit(result); 106 } finally { 107 try { 108 UnicastRemoteObject.unexportObject(impl, true); 109 } catch (Exception e) { } 110 } 111 } 112 } 113 EOF 114 115 Success "$javac" -classpath "jars/A.jar" Main.java MainI.java 116 Success "$rmic" -classpath "jars/A.jar${PS}." Main 117 Success "$java" ${TESTVMOPTS} -classpath "jars/A.jar${PS}." Main 118 119 Sys rm -f Main.class MainI.class Main_Stub.class 120 121 Success "$javac" -classpath "jars/sub/B.zip" Main.java MainI.java 122 Success "$rmic" -classpath "jars/sub/B.zip${PS}." Main 123 Success "$java" ${TESTVMOPTS} -classpath "jars/sub/B.zip${PS}." Main 124 125 #Sys rm -f Main.class MainI.class Main_Stub.class 126 Sys rm -f Main_Stub.class # javac -extdirs workaround 127 128 #Success "$javac" -extdirs "jars" -classpath None Main.java MainI.java 129 Success "$rmic" -extdirs "jars" -classpath . Main 130 Success "$java" ${TESTVMOPTS} -Djava.ext.dirs="jars" -cp . Main 131 132 Sys rm -f Main_Stub.class 133 134 #Success "$javac" -extdirs "jars/sub" -classpath None Main.java MainI.java 135 Success "$rmic" -extdirs "jars/sub" -classpath . Main 136 Success "$java" ${TESTVMOPTS} -Djava.ext.dirs="jars/sub" -cp . Main 137 138 Cleanup 139 140 Bottom Line | 95 import java.rmi.server.UnicastRemoteObject; 96 public class Main implements MainI { 97 public int doIt(A a, B b) { 98 return a.f(b) + b.f(a); 99 } 100 public static void main(String args[]) throws Exception { 101 Main impl = new Main(); 102 try { 103 MainI stub = (MainI) UnicastRemoteObject.exportObject(impl); 104 int result = stub.doIt(new A(), new B()); 105 System.exit(result); 106 } finally { 107 try { 108 UnicastRemoteObject.unexportObject(impl, true); 109 } catch (Exception e) { } 110 } 111 } 112 } 113 EOF 114 115 Success "$javac" ${TESTTOOLVMOPTS} ${TESTJAVACOPTS} -classpath "jars/A.jar" Main.java MainI.java 116 Success "$rmic" -classpath "jars/A.jar${PS}." Main 117 Success "$java" ${TESTVMOPTS} ${TESTJAVAOPTS} -classpath "jars/A.jar${PS}." Main 118 119 Sys rm -f Main.class MainI.class Main_Stub.class 120 121 Success "$javac" ${TESTTOOLVMOPTS} ${TESTJAVACOPTS} -classpath "jars/sub/B.zip" Main.java MainI.java 122 Success "$rmic" -classpath "jars/sub/B.zip${PS}." Main 123 Success "$java" ${TESTVMOPTS} ${TESTJAVAOPTS} -classpath "jars/sub/B.zip${PS}." Main 124 125 #Sys rm -f Main.class MainI.class Main_Stub.class 126 Sys rm -f Main_Stub.class # javac -extdirs workaround 127 128 #Success "$javac" ${TESTTOOLVMOPTS} ${TESTJAVACOPTS} -extdirs "jars" -classpath None Main.java MainI.java 129 Success "$rmic" -extdirs "jars" -classpath . Main 130 Success "$java" ${TESTVMOPTS} ${TESTJAVAOPTS} -Djava.ext.dirs="jars" -cp . Main 131 132 Sys rm -f Main_Stub.class 133 134 #Success "$javac" ${TESTTOOLVMOPTS} ${TESTJAVACOPTS} -extdirs "jars/sub" -classpath None Main.java MainI.java 135 Success "$rmic" -extdirs "jars/sub" -classpath . Main 136 Success "$java" ${TESTVMOPTS} ${TESTJAVAOPTS} -Djava.ext.dirs="jars/sub" -cp . Main 137 138 Cleanup 139 140 Bottom Line |