[Soot-list] Exception in thread "main" java.lang.NoClassDefFoundError: java_cup/runtime/Scanner

Eric Bodden eric.bodden at mail.mcgill.ca
Tue Apr 1 02:05:59 EDT 2008


This class is contained in the polyglot jar file. So I assume that
your classpath is wrong. Apart from that I recommend using Soot 2.2.5.

Hope that helps,
Eric

On 31/03/2008, bq chan <cbqios at gmail.com> wrote:
> Hi,Dear all!
>
> I am a freshman and need your help.
>
> I downloaded soot2.2.4 and  set the classpath corectly I think. There
> was no problem to creates IRs such as jimple, grimple.
>
> But when I tried "Creating a class from scratch with Soot" in
> http://www.sable.mcgill.ca/soot/tutorial/createclass/index.html.
>
> javac Main.java is ok, and I got Main.class. Then when I run java Main,
> the following errors happend:
>
> Exception in thread "main" java.lang.NoClassDefFoundError:
> java_cup/runtime/Scanner
>          at java.lang.ClassLoader.defineClass1(Native
> Method)
>         at java.lang.ClassLoader.defineClass(Unknown
> Source)
>         at
> java.security.SecureClassLoader.defineClass(Unknown Source)
>          at java.net.URLClassLoader.defineClass(Unknown
> Source)
>         at java.net.URLClassLoader.access$000(Unknown
> Source)
>         at java.net.URLClassLoader$1.run(Unknown Source)
>         at
> java.security.AccessController.doPrivileged(Native Method)
>          at java.net.URLClassLoader.findClass(Unknown
> Source)
>         at java.lang.ClassLoader.loadClass(Unknown Source)
>         at
> sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
>          at java.lang.ClassLoader.loadClass(Unknown Source)
>         at java.lang.ClassLoader.loadClassInternal(Unknown
> Source)
>         at jasmin.ClassFile.readJasmin(ClassFile.java:1045)
>          at jasmin.Main.assemble(Main.java:24)
>         at
> soot.util.JasminOutputStream.flush(JasminOutputStream.java:35)
>         at sun.nio.cs.StreamEncoder.implFlush(Unknown
> Source)
>          at sun.nio.cs.StreamEncoder.flush(Unknown Source)
>         at java.io.OutputStreamWriter.flush(Unknown Source)
>         at java.io.PrintWriter.flush(Unknown Source)
>         at Main.main(Main.java:119)
>  Caused by: java.lang.ClassNotFoundException:
> java_cup.runtime.Scanner
>         at java.net.URLClassLoader$1.run(Unknown Source)
>         at
> java.security.AccessController.doPrivileged(Native Method)
>          at java.net.URLClassLoader.findClass(Unknown
> Source)
>         at java.lang.ClassLoader.loadClass(Unknown Source)
>         at
> sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
>          at java.lang.ClassLoader.loadClass(Unknown Source)
>         at java.lang.ClassLoader.loadClassInternal(Unknown
> Source)
>         ... 20 more
>
> ]$ echo $CLASSPATH
> .:/usr/java/latest/lib:/usr/java/latest/lib/dt.jar:/usr/java/latest/lib/sootclasses-2.2.4.jar:/usr/java/latest/lib/jasminclasses-2.2.4.jar:/usr/java/latest/lib/polyglotclasses-1.3.4.jar
>
> $ java -version
> java version "1.6.0_05"
> Java(TM) SE Runtime Environment (build 1.6.0_05-b13)
> Java HotSpot(TM) Client VM (build 10.0-b19, mixed mode, sharing)
>
>  At first I guessed that  the error was caused by the compatibility of
> soot2.2.4 and
> jdk1.6.0_05.
>
>  But after I changed the jdk1.6 to   1.4.2_17 as following, the same errors
> happened. I need to use soot as an infrastructure   in My project.  Anybody
> who knows the causes please help me. Thanks!
>
>
> _______________________________________________
>  Soot-list mailing list
>  Soot-list at sable.mcgill.ca
>  http://mailman.cs.mcgill.ca/mailman/listinfo/soot-list
>
>


-- 
Eric Bodden
Sable Research Group
McGill University, Montréal, Canada


More information about the Soot-list mailing list