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

Tianyin Xu tixu at cs.ucsd.edu
Fri Dec 5 01:28:58 EST 2014


Oh, I found the nightly build link on the Github page.

Thanks, Alexandre!

~t

On Thu, Dec 4, 2014 at 10:04 AM, Tianyin Xu <tixu at cs.ucsd.edu> wrote:

> 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/
>



-- 
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/5fb8a927/attachment-0001.html 


More information about the Soot-list mailing list