<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="Generator" content="Microsoft Word 12 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:Helvetica;
        panose-1:2 11 6 4 2 2 2 2 2 4;}
@font-face
        {font-family:宋体;
        panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:"\@宋体";
        panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
        {font-family:Consolas;
        panose-1:2 11 6 9 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:宋体;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
tt
        {mso-style-priority:99;
        font-family:宋体;}
span.apple-converted-space
        {mso-style-name:apple-converted-space;}
span.EmailStyle19
        {mso-style-type:personal-reply;
        font-family:"Calibri","sans-serif";
        color:#1F497D;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:72.0pt 90.0pt 72.0pt 90.0pt;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="ZH-CN" link="blue" vlink="purple">
<div class="WordSection1">
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D">Thank you very much.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D">And I got another question that for the external dependency package which is not in the official pkg.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D">For example,<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D">I have<i> a.jar</i> and I have
<i>sth.class</i> who’s using <i>a.jar</i>.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D">But if I want to use Soot to analysis
<i>sth.class</i>, it tells me that can’t find the class which is in <i>a.jar</i>.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D">I’ve tried the “-i” option, but didn't work.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D">If I use
<i>-process-dir</i> to include <i>a.jar</i>, it would be OK.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D">But , what should I do if I have many this kind of jar like<i> b.jar</i> &
<i>c.jar </i>& etc.?<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D">Since
<i>-process-dir </i>didn't work if use the directory of all jar files.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497D"><o:p> </o:p></span></p>
<div>
<div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm">
<p class="MsoNormal"><b><span style="font-size:10.0pt">发件人<span lang="EN-US">:</span></span></b><span lang="EN-US" style="font-size:10.0pt"> Bernhard Berger [mailto:berber@tzi.de]
<br>
</span><b><span style="font-size:10.0pt">发送时间<span lang="EN-US">:</span></span></b><span lang="EN-US" style="font-size:10.0pt"> 2017</span><span style="font-size:10.0pt">年<span lang="EN-US">2</span>月<span lang="EN-US">23</span>日<span lang="EN-US"> 18:15<br>
</span><b>收件人<span lang="EN-US">:</span></b><span lang="EN-US"> liujiefeng<br>
</span><b>抄送<span lang="EN-US">:</span></b><span lang="EN-US"> soot-list@CS.McGill.CA<br>
</span><b>主题<span lang="EN-US">:</span></b><span lang="EN-US"> Re: [Soot-list] problem about -process-dir of reading jar file<o:p></o:p></span></span></p>
</div>
</div>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">Hi,<o:p></o:p></span></p>
<div>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span lang="EN-US">Soot makes the same assumptions according to the jar file layout as any standard java virtual machine. Therefore, you have a) to extract your or b) to repackage your jar files. <o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span lang="EN-US">Regards, Bernhard<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<div>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<div>
<p class="MsoNormal"><span lang="EN-US">Am 23.02.2017 um 10:49 schrieb liujiefeng <<a href="mailto:liujiefeng@huawei.com">liujiefeng@huawei.com</a>>:<o:p></o:p></span></p>
</div>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<div>
<p class="MsoNormal" style="text-align:justify;text-justify:inter-ideograph"><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif"">Hi, there.<o:p></o:p></span></p>
<p class="MsoNormal" style="text-align:justify;text-justify:inter-ideograph"><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif""> <o:p></o:p></span></p>
<p class="MsoNormal" style="text-align:justify;text-justify:inter-ideograph"><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif"">I’m trying to use SOOT to analyze a whole jar file in eclipse.<o:p></o:p></span></p>
<p class="MsoNormal" style="text-align:justify;text-justify:inter-ideograph"><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif"">And I use these sootArgs:<o:p></o:p></span></p>
<p class="MsoNormal" style="text-align:justify;text-justify:inter-ideograph"><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif""> <o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.0pt;font-family:Consolas"> String[]<span class="apple-converted-space"> </span><span style="color:#6A3E3E">sootArgsJar</span><span class="apple-converted-space"> </span>= {</span><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif""><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.0pt;font-family:Consolas"> <span class="apple-converted-space"> </span><span style="color:#2A00FF">"-cp"</span>,<span class="apple-converted-space"> </span><span style="color:#2A00FF">"C:\\Users\\xxxxxxx\\workspace-neon\\test.jar"</span>,</span><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif""><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.0pt;font-family:Consolas"> <span class="apple-converted-space"> </span><span style="color:#2A00FF">"-process-dir"</span>,<span class="apple-converted-space"> </span><span style="color:#2A00FF">"C:\\Users\\xxxxxxx\\workspace-neon\\test.jar"</span>,<span class="apple-converted-space"> </span><span style="color:#2A00FF">"-pp"</span>,</span><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif""><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.0pt;font-family:Consolas"> <span class="apple-converted-space"> </span><span style="color:#2A00FF">"-w"</span>,<span class="apple-converted-space"> </span><span style="color:#2A00FF">"-app"</span>,</span><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif""><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.0pt;font-family:Consolas"> <span class="apple-converted-space"> </span><span style="color:#2A00FF">"-keep-line-number"</span>,</span><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif""><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.0pt;font-family:Consolas"> <span class="apple-converted-space"> </span><span style="color:#2A00FF">"-keep-bytecode-offset"</span>,</span><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif""><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.0pt;font-family:Consolas"> <span class="apple-converted-space"> </span><span style="color:#2A00FF">"-p"</span>,<span class="apple-converted-space"> </span><span style="color:#2A00FF">"cg"</span>,<span class="apple-converted-space"> </span><span style="color:#2A00FF">"implicit-entry:false"</span>,</span><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif""><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.0pt;font-family:Consolas"> <span class="apple-converted-space"> </span><span style="color:#2A00FF">"-p"</span>,<span class="apple-converted-space"> </span><span style="color:#2A00FF">"cg.spark"</span>,<span class="apple-converted-space"> </span><span style="color:#2A00FF">"enabled"</span>,</span><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif""><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.0pt;font-family:Consolas"> <span class="apple-converted-space"> </span><span style="color:#2A00FF">"-p"</span>,<span class="apple-converted-space"> </span><span style="color:#2A00FF">"cg.spark"</span>,<span class="apple-converted-space"> </span><span style="color:#2A00FF">"simulate-natives"</span>,</span><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif""><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.0pt;font-family:Consolas"> <span class="apple-converted-space"> </span><span style="color:#2A00FF">"-p"</span>,<span class="apple-converted-space"> </span><span style="color:#2A00FF">"cg"</span>,<span class="apple-converted-space"> </span><span style="color:#2A00FF">"safe-forname"</span>,</span><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif""><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.0pt;font-family:Consolas"> <span class="apple-converted-space"> </span><span style="color:#2A00FF">"-p"</span>,<span class="apple-converted-space"> </span><span style="color:#2A00FF">"cg"</span>,<span class="apple-converted-space"> </span><span style="color:#2A00FF">"safe-newinstance"</span>,</span><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif""><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align:justify;text-justify:inter-ideograph"><span lang="EN-US" style="font-size:10.0pt;font-family:Consolas"> };</span><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif""><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align:justify;text-justify:inter-ideograph"><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif""> <o:p></o:p></span></p>
<p class="MsoNormal" style="text-align:justify;text-justify:inter-ideograph"><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif"">but I got some problem as below:<o:p></o:p></span></p>
<p class="MsoNormal" style="text-align:justify;text-justify:inter-ideograph"><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif""> <o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:10.0pt;font-family:Consolas"> </span><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif""><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align:justify;text-justify:inter-ideograph;text-indent:21.0pt">
<u><span lang="EN-US" style="font-size:10.0pt;font-family:Consolas;color:#0066CC">java.lang.RuntimeException</span></u><span lang="EN-US" style="font-size:10.0pt;font-family:Consolas;color:red">: Class names not equal! test.DatabaseTestSettings$1 != test.bin.test.DatabaseTestSettings$1</span><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif""><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align:justify;text-justify:inter-ideograph"><span lang="EN-US" style="font-size:10.0pt;font-family:Consolas;color:red"> </span><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif""><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align:justify;text-justify:inter-ideograph"><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif""> <o:p></o:p></span></p>
<p class="MsoNormal" style="text-align:justify;text-justify:inter-ideograph"><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif"">So I look up some Soot command-line options and I found this:<o:p></o:p></span></p>
<p class="MsoNormal" style="text-align:justify;text-justify:inter-ideograph"><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif""> <o:p></o:p></span></p>
<p class="MsoNormal" style="text-align:justify;text-justify:inter-ideograph;text-indent:21.0pt">
<span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif"">If subdirectories of<span class="apple-converted-space"> </span><i>dir</i><span class="apple-converted-space"> </span>contain<span class="apple-converted-space"> </span></span><tt><span lang="EN-US">.class</span></tt><span class="apple-converted-space"><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif""> </span></span><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif"">or<span class="apple-converted-space"> </span></span><tt><span lang="EN-US">.jimple</span></tt><span class="apple-converted-space"><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif""> </span></span><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif"">files,
Soot assumes that the subdirectory names correspond to components of the classes' package names. If<span class="apple-converted-space"> </span><i>dir</i><span class="apple-converted-space"> </span>contains<span class="apple-converted-space"> </span></span><tt><span lang="EN-US">subA/subB/MyClass.class</span></tt><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif"">,
for instance, then Soot assumes<span class="apple-converted-space"> </span></span><tt><span lang="EN-US">MyClass</span></tt><span class="apple-converted-space"><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif""> </span></span><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif"">is
in package<span class="apple-converted-space"> </span></span><tt><span lang="EN-US">subA.subB</span></tt><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif"">.<o:p></o:p></span></p>
<p class="MsoNormal" style="text-align:justify;text-justify:inter-ideograph"><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif""> <o:p></o:p></span></p>
<p class="MsoNormal" style="text-align:justify;text-justify:inter-ideograph"><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif"">And how can I ignore this just to set my soot path to<span class="apple-converted-space"> </span><i>test.jar/test/bin</i>?<o:p></o:p></span></p>
<p class="MsoNormal" style="text-align:justify;text-justify:inter-ideograph"><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif"">I’ve tried to set<span class="apple-converted-space"> </span><i>-cp</i><span class="apple-converted-space"> </span>and<span class="apple-converted-space"> </span><i>-process-dir</i><span class="apple-converted-space"> </span>to
any form like:<o:p></o:p></span></p>
<p class="MsoNormal" style="text-align:justify;text-justify:inter-ideograph"><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif""> <span class="apple-converted-space"> </span><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align:justify;text-justify:inter-ideograph"><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif""> <span class="apple-converted-space"> </span></span><span lang="EN-US" style="font-size:10.0pt;font-family:Consolas;color:#2A00FF">"C:\\Users\\xxxxxxx\\workspace-neon\\test.jar:test\\bin"</span><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif""><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align:justify;text-justify:inter-ideograph"><span lang="EN-US" style="font-size:10.0pt;font-family:Consolas;color:#2A00FF"> "C:\\Users\\xxxxxxx\\workspace-neon\\test.jar;test\\bin”</span><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif""><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align:justify;text-justify:inter-ideograph"><span lang="EN-US" style="font-size:10.0pt;font-family:Consolas;color:#2A00FF"> "C:\\Users\\xxxxxxx\\workspace-neon\\test.jar\\test\\bin"</span><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif""><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align:justify;text-justify:inter-ideograph"><span lang="EN-US" style="font-size:10.0pt;font-family:Consolas;color:#2A00FF"> Etc..</span><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif""><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align:justify;text-justify:inter-ideograph"><span lang="EN-US" style="font-size:10.0pt;font-family:Consolas;color:#2A00FF">It all doesn’t work.</span><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif""><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align:justify;text-justify:inter-ideograph"><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif""> <o:p></o:p></span></p>
<p class="MsoNormal" style="text-align:justify;text-justify:inter-ideograph"><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif"">Looking forward to your reply.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:9.0pt;font-family:"Helvetica","sans-serif"">_______________________________________________<br>
Soot-list mailing list<br>
</span><span lang="EN-US"><a href="mailto:Soot-list@CS.McGill.CA"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif";color:purple">Soot-list@CS.McGill.CA</span></a></span><span lang="EN-US" style="font-size:9.0pt;font-family:"Helvetica","sans-serif""><br>
</span><span lang="EN-US"><a href="https://mailman.cs.mcgill.ca/mailman/listinfo/soot-list"><span style="font-size:9.0pt;font-family:"Helvetica","sans-serif";color:purple">https://mailman.CS.McGill.CA/mailman/listinfo/soot-list</span></a><o:p></o:p></span></p>
</div>
</blockquote>
</div>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
</div>
</div>
</body>
</html>