[Soot-list] couldn't find class: SableJBDD.bdd.JBddVariable
tezcan at dilshener.de
Tue Jan 3 17:47:49 EST 2012
Sorry looks like my answers to your questions somehow do not appear on my last email, strange.
Anyway, I would like to process all the classes in a directory and obtain call graph information for each class. The classes do not have a main method and do not always reference each other either. The processing order is also not important for my purpose. All I want at the end is a list of caller/callee information in
"caller_class.method() may call called_class.calledMethod()" format.
Looking at the Examples I found dk.brics.soot.callgraphs.CallGraphExample.
It does exactly what I want but needs in soot.Main call arguments a main-class with a main method as well as argument classes. However, I do not have a main class in my directory with a main method. I just want to process all the classes one by one.
In an attempt to achieve that I extended the soot.Main arguments list in the code and added the process-dir option, leaving the option -w as already was there.
But it is not doing what I want.
How can I call soot so that it reads all the classes from a directory?
I have already modified my code to get and iterate over all classes by Scene.v().getApplicationClasses(),
and for each class iterate over all its methods but starting soot with the right parameters is missing.
Thanks in advance for your help
On 03.01.2012, at 18:16, Eric Bodden wrote:
> Tezcan you still have not answered my question. The options -w and
> -process-dir are quite incompatible. Hence your code does not really
> make sense. Thus, to help you out, we need to know what you are
> actually trying to accomplish. Why are you using process-dir? Why are
> you using -w?
> On 3 January 2012 17:50, Tezcan Dilshener <tezcan at dilshener.de> wrote:
>> Hi Eric,
>> I modified my code a little bit (see attchement) but I still fail to load all the classes from a directory and process them accordingly to generate a sim,ple call graph.
>> Hope you can help.
>> ----- original message --------
>> Subject: Re: [Soot-list] couldn't find class: SableJBDD.bdd.JBddVariable
>> Sent: Tue, 03 Jan 2012
>> From: Eric Bodden<eric.bodden at ec-spride.de>
>>> Hi Tezcan.
>>> I am not sure what causes the error you are seeing but using
>>> process-dir in combination with call-graph construction sounds wrong.
>>> What are you trying to accomplish? Maybe there is a better set of
>>> command-line options...
>>> Best wishes,
>>> On 3 January 2012 14:41, Tezcan Dilshener <tezcan at dilshener.de> wrote:
>>>> Hi all,
>>>> I am experiencing some beginners luck.
>>>> I have a small class to generate call-graph.
>>>> It works fine when I run it to process a class that has a main method.
>>> However, when I modify to process class from a directory using the
>>> -process-dir option, it fails with couldn't find class:
>>> SableJBDD.bdd.JBddVariable error.
>>>> I see that one can set the classpath with -cp option but where is jar file
>>> with this class?
>>>> thanks for any help
>>>> Soot-list mailing list
>>>> Soot-list at sable.mcgill.ca
>>> Eric Bodden, Ph.D., http://bodden.de/
>>> Head of Secure Software Engineering Group at EC SPRIDE
>>> Principal Investigator in Secure Services at CASED
>>> Tel: +49 6151 16-75422 Fax: +49 6151 16-72051
>>> Room 3.2.14, Mornewegstr. 30, 64293 Darmstadt
>> --- original message end ----
> Eric Bodden, Ph.D., http://bodden.de/
> Head of Secure Software Engineering Group at EC SPRIDE
> Principal Investigator in Secure Services at CASED
> Tel: +49 6151 16-75422 Fax: +49 6151 16-72051
> Room 3.2.14, Mornewegstr. 30, 64293 Darmstadt
"Subset of all things that we know and believe makes our knowledge."
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Soot-list