[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: soot createclass tutorial
Hi!
Is the runtime library included in the SootClassPath? The easiest way to
do that is to include "rt.jar" in your JRE lib folder.
Cheers,
Eric
------------------------------------------------------------
Eric Bodden
CS-DIP full time student @ University of Kent at Canterbury
UKC internal phone: 5095
ICQ UIN: 12656220, secure mail on demand
Website: http://www.bodden.de
> -----Original Message-----
> From: owner-soot-list@sable.mcgill.ca
> [mailto:owner-soot-list@sable.mcgill.ca] On Behalf Of Chris Pickett
> Sent: 11 February 2003 4:44 AM
> To: soot-list@sable.mcgill.ca
> Subject: soot createclass tutorial
>
>
> Hi,
>
> I'm trying to do the first lesson in the second half of the soot
> tutorial. I can get CreateClassExample.java to compile with
> Sun's SDK
> 1.4.1, but I can't get CreateClassExample.class to execute without
> throwing the following exception:
>
> Exception in thread "main" java.lang.RuntimeException: tried to get
> nonexistent field!
> at soot.Scene.getField(Scene.java:329)
> at CreateClassExample.main(CreateClassExample.java:98)
>
> In CreateClassExample:
>
> // add "tmpRef = java.lang.System.out"
> units.add(
> Jimple.v().newAssignStmt(
> tmpRef, Jimple.v().newStaticFieldRef(
> Scene.v().getField(
> "<java.lang.System: java.io.PrintStream out>"))));
>
> In Scene.java:
>
> public SootField getField(String fieldSignature)
> {
> SootField f = (SootField)
> fieldSignatureToField.get(fieldSignature);
> if (f != null)
> return f;
>
> throw new RuntimeException("tried to get nonexistent field!");
> }
>
> Also, in the tutorial, r0 and r1 in the sample Jimple output
> need to be
> updated to l0 and tmpRef respectively.
>
> Cheers,
> Chris
>
>
>
>
>
>
>