-
Notifications
You must be signed in to change notification settings - Fork 171
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
It is irrational that argument "--main-class" requires not null #7
Comments
An obvious issue is that argument |
After changing it to fully qualified name. I still get the same error. |
Could you provide the full arguments you used? |
Thank you! |
Hi!
In your scene, a temporary solution now is to choose one of |
Hi thank you so much, I tried to run it based on your suggestion with args below:
However, there was another error
Thank you, |
I will take a deep look at this issue later. Currently, a workaround is to pass the decompressed directory (not a jar file) as |
In the above exception, the Soot’s frontend doesn't support reading Java source files out of an archive. So we need pass the decompressed directory (but not a jar) as class path. In addition, as stated below, we recommend analyzing the bytecode for real-world program. In your case, is that using commons-io-2.9.0-tests.jar instead of commons-io-2.9.0-test-sources.jar? Maybe so, I guess.
|
After the commit d9784e3, it only requires that at least one of That means |
No response for more than 7 days. Closing now. |
Hello, I apologize for the delay. For running real world project, I want to run, for instance, inter-procedural analysis for each individual Junit Test Case to see how data might flow from and to the specific test case. To do this, I want to get minimal execution using existing analyzer before writing some custom analyzer. I am still having trouble running this. If I want to analyze a specific Junit method (not necessarily static main method), how would I go about instrumenting it? Currently, my cmd looks like this However, there was issue with was that it must be decompressed or something. I was wondering, what would be the exact step to go about this? |
see #9.
It is not clear I cannot get what you mean. Exception infomation should be provided if it exists. |
Hi, I am still getting the same error, when executing command below
the -class-path is the directory to bytecode
Finally, I really appreciate the documentations, but I am still having trouble running a simple example. I was wondering if it would be possible to make available some kind of complete example on analyzing a real world apache project, where it runs some reproducible analysis example from start to finish. I feel like this would help make better accessibility of the features. Thank you. |
I notice that the line number of method It seems to imply that the Tai-e you are using is under this commit 9d9d15a but not d9784e3 (as I mentioned in #7 (comment)). Tai-e/src/main/java/pascal/taie/frontend/soot/SootWorldBuilder.java Lines 244 to 248 in 9d9d15a
Tai-e/src/main/java/pascal/taie/frontend/soot/SootWorldBuilder.java Lines 252 to 256 in d9784e3
Could you pull the latest code and try it again? |
Thank you, it's working now. Another question I have is I want to use plugin to analyze specific Junit Test Method. What is the general step done to do that? I tried to use existing plugin just as a proof-of-concept. For example, let's say my -input-classes="some test.java file to analyze". To access this class's Junit method in the in the TaintAnalysis's onStart to add to the solver.addEntryPoint(), I used below code. It that ok?
I am also using
I used -ap because I only want to analyze specific junit file, but this file depends on other files. Would this affect analysis? For example, I got the below logs. Another question I have is, for this above analysis, it gave an output.dump that is for entire source code, but not the specified files. How to only get output for the specified files? |
Refer to wiki, #9, write a plugin of your own, and activate it.
It seems that this would treat all methods of all classes in the World (the classes being analyzed) as
See #3.
There is no option to support this action. If you want to filter the pointers to be dumped, consider modifying the following code: Tai-e/src/main/java/pascal/taie/analysis/pta/plugin/ResultProcessor.java Lines 178 to 185 in 283d1ef
|
Hello =)
I am trying to run tai-e on a jar project I downloaded from this link. Specifically on commons-io-2.9.0-test-sources.jar.
To run this, I used following argument below.
This is the path of the .jar
-cp "XXX/XX/jar/commons-io-2.9.0-test-sources.jar"
This is the path of the .class file
--input-classes="org/apache/commons/io/input/BoundedInputStreamTest.class"
This is just trying to reproduce example posted on your documentation
-a pta=cs:2-type;merge-string-constants:true
Unfortunately, I got errors below. I was wondering if you could help me to resolve this issue?
The text was updated successfully, but these errors were encountered: