[Soot-list] Weird Compilation Errors When Dealing with ZooKeeper

Tianyin Xu tixu at cs.ucsd.edu
Thu Dec 4 13:04:45 EST 2014


Thanks, Alex!

Where can I get the nightly build? I obtained Soot from the official
download page,
http://www.sable.mcgill.ca/soot/soot_download.html

where the link of nightly build is not accessible. :-(
http://vandyk.st.informatik.tu-darmstadt.de/abc/

~t

On Thu, Dec 4, 2014 at 2:36 AM, Alexandre Bartel <alexandre.bartel at cased.de>
wrote:

> Hi Tianyin,
>
> It seems you are using an outdated version of Soot.
> Could you try with the latest nightly build?
>
> Thanks!
> Alexandre
>
> On Wed, 2014-12-03 at 23:54 -0800, Tianyin Xu wrote:
> > Hi all,
> >
> >
> >
> > I'm new to Soot. I've carefully read all the tutorials on the website,
> > and tried out some toy programs successfully.
> >
> >
> > I try to see how Soot works with real-world Java programs, so I picked
> > ZooKeeper and try to compile it use Soot. But I encountered the
> > following error:
> >
> >
> > Exception in thread "main" java.lang.RuntimeException: couldn't find
> > class: wildcards.& java.net.SocketAddress& java.lang.String (is your
> > soot-class-path set properly?)
> > at soot.SootResolver.bringToHierarchy(SootResolver.java:205)
> > at soot.SootResolver.bringToSignatures(SootResolver.java:239)
> > at soot.SootResolver.bringToBodies(SootResolver.java:280)
> > at soot.SootResolver.processResolveWorklist(SootResolver.java:150)
> > at soot.SootResolver.resolveClass(SootResolver.java:124)
> > at soot.Scene.loadClass(Scene.java:448)
> > at soot.Scene.loadClassAndSupport(Scene.java:433)
> > at soot.Scene.loadNecessaryClasses(Scene.java:1076)
> > at soot.Main.run(Main.java:167)
> > at soot.Main.main(Main.java:141)
> > at wjtp_analysis.Main.main(Main.java:89)
> >
> >
> > I'm pretty sure I setup the classpath successfully (that's how I did
> > with other programs). The commend is
> >
> >
> > #java  -cp <soot> soot.Main -cp <zookeeper> -pp -w -main-class
> > org.apache.zookeeper.ZooKeeperMain -process-dir,
> /home/tianyin/app/zookeeper-3.4.6/src/java/main/
> >
> >
> > <soot> points to jasminclasses-2.5.0.jar, polyglotclasses-1.3.5.jar,
> > and sootclasses-2.5.0.jar
> > <zookeeper> points to the external libraries ZooKeeper relies on
> >
> >
> > It seems that Soot is looking for a class named "wildcards.&
> > java.net.SocketAddress& java.lang.String", but certainly there's no
> > such weird class. I searched hard and didn't find anything
> > suspicious...
> >
> >
> > If I use "-allow-phantom-refs", then I can bypass the errors but then
> > I got the following errors which I suspect to be caused by this
> > previous problem.
> >
> >
> > Warning: java.dyn.InvokeDynamic is a phantom class!
> > Warning: wildcards.& java.net.SocketAddress& java.lang.String is a
> > phantom class!
> > [Call Graph] For information on where the call graph may be
> > incomplete, use the verbose option to the cg phase.
> > Transforming org.apache.zookeeper.ZooDefs$OpCode...
> > Transforming org.apache.zookeeper.ZooDefs$Perms...
> > ......
> > Writing to sootOutput/org/apache/zookeeper/ZooDefs$OpCode.class
> > Writing to sootOutput/org/apache/zookeeper/ZooDefs$Perms.class
> > ...
> > Exception in thread "main" java.lang.RuntimeException:
> > <org.apache.zookeeper.server.persistence.FileTxnSnapLog: long
> >
> restore(org.apache.zookeeper.server.DataTree,java.util.Map,org.apache.zookeeper.server.persistence.FileTxnSnapLog$PlayBackListener)>:
> incoherent stack height at block merge point Block 1:
> > [preds: 0 20 ] [succs: 2 ]
> > nop;
> > goto nop;
> > Block 20:
> > [preds: 18 ] [succs: 1 ]
> > nop;
> > goto nop;
> >
> >
> > computed blockHeight == 2 recorded blockHeight = 0
> > at soot.baf.JasminClass.calculateStackHeight(JasminClass.java:1910)
> > at soot.baf.JasminClass.calculateStackHeight(JasminClass.java:1915)
> > at soot.baf.JasminClass.calculateStackHeight(JasminClass.java:1915)
> > at soot.baf.JasminClass.calculateStackHeight(JasminClass.java:1915)
> > at soot.baf.JasminClass.calculateStackHeight(JasminClass.java:1915)
> > at soot.baf.JasminClass.calculateStackHeight(JasminClass.java:1915)
> > at soot.baf.JasminClass.calculateStackHeight(JasminClass.java:1915)
> > at soot.baf.JasminClass.calculateStackHeight(JasminClass.java:1915)
> > at soot.baf.JasminClass.calculateStackHeight(JasminClass.java:1915)
> > at soot.baf.JasminClass.calculateStackHeight(JasminClass.java:1915)
> > at soot.baf.JasminClass.calculateStackHeight(JasminClass.java:1915)
> > at soot.baf.JasminClass.calculateStackHeight(JasminClass.java:1915)
> > at soot.baf.JasminClass.calculateStackHeight(JasminClass.java:1915)
> > at soot.baf.JasminClass.emitMethodBody(JasminClass.java:322)
> > at soot.AbstractJasminClass.emitMethod(AbstractJasminClass.java:697)
> > at soot.AbstractJasminClass.<init>(AbstractJasminClass.java:576)
> > at soot.baf.JasminClass.<init>(JasminClass.java:92)
> > at soot.PackManager.writeClass(PackManager.java:878)
> > at soot.PackManager.writeOutput(PackManager.java:475)
> > at soot.PackManager.writeOutput(PackManager.java:400)
> > at soot.Main.run(Main.java:199)
> > at soot.Main.main(Main.java:141)
> > at wjtp_analysis.Main.main(Main.java:89)
> >
> >
> > Thanks a lot!
> > Tianyin
> > _______________________________________________
> > Soot-list mailing list
> > Soot-list at CS.McGill.CA
> > https://mailman.CS.McGill.CA/mailman/listinfo/soot-list
>
>
>
>


-- 
Tianyin XU,
http://cseweb.ucsd.edu/~tixu/
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mailman.CS.McGill.CA/pipermail/soot-list/attachments/20141204/7482db42/attachment.html 


More information about the Soot-list mailing list