home  

Updating JiST to run with Java 1.5

 
 

This solution was found and reported by the team of JiST/SWANS Portal from Ulm university. See http://vanet.info/node/98 for more details.

 

  1. Update BCEL - Download latest BCEL library, and replace the one in the original distribution of JiST/SWANS (under jist-swans-1.0.6/libs/) with it.
    1. You will get two compilation errors in classes jist.runtime.RemoteJist.RemoteRepository and jist.runtime.RewriterVerify. Just let Eclipse fix them automatically.
      1. Implement default jist.runtime.RemoteJist.RemoteRepository.getClassPath() method that returns null.
      2. Define jist.runtime.RewriterVerify.checkme() to throw ClassNotFoundException or put the call to org.apache.bcel.Repository.lookupClass(name) inside try ... catch.
  2. Add a command line option -g:lines,source to the compiler (this works around a problem of ClassFormatException around LVT entries that BCEL apparently has with Java 1.5):
    1. If using javac to compile JiST, just add this to javac options: javac -g:lines,source
    2. If compiling directly in Eclipse by using an Eclipse built in compiler, goto: File->Properties->Java Compiler->
      1. Uncheck option "Add variable attributes to generated class files (used by the debugger )".
      2. Leave options "Add line number attributes to generated class files (used by the debugger )" and "Add source file name to generated class files (used by the debugger )" checked.
         

Gabriel Kliot

07/24/2008