[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Fwd]: Reloading classes in Soot
---------- Forwarded message ----------
Date: Wed, 9 Jun 2004 02:32:15 +0900
From: Jung-joon Kim <jjkim@cse.hanyang.ac.kr>
To: Patrick LAM <plam@sable.mcgill.ca>
Subject: Dear LAM, about soot mail list
============== mail ignored ================
Subject: Reloading classes in soot
Hi, everyone.
We want to reload classes in Soot with different CLASSPATH. because, We
have several programs to analyze which use different version of a same
class and we want analyze these programs at once, with a single
instance(VM) of analyzer (which use Soot framework.)
But, It seems that Soot manage class cache internally. As a result, In the
following code, class Test loaded once only.
import soot.*;
public class Test {
public static void main(String[] args) {
G.v().Options().set_verbose(true);
Scene.v().loadClassAndSupport("Test");
Scene.v().setSootClassPath("/other/places");
System.out.println("Now, I want to re-load class");
// doesn't reload Test at this point due to cache of soot
Scene.v().loadClassAndSupport("Test");
}
}
Is there any method to reset internal class cache in soot? Is it only way
to start in another process(other VM)?
Sincerely, yours.
=============================
--
Jung-joon Kim
Programming Languages Lab.
Department of Computer Science and Engineering
Hanyang University.
email. jjkim@cse.hyu.ac.kr