Skip to content
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

How can we use the code with making it a eclipse plugin? #3

Open
farhaanbukhsh opened this Issue Feb 11, 2019 · 2 comments

Comments

Projects
None yet
3 participants
@farhaanbukhsh
Copy link

farhaanbukhsh commented Feb 11, 2019

  1. How can we use this callgraph toolbox as a standalone program instead of a plugin of eclipse?

The use case is in my project I just want the relationship between different functions and wanted to do an analysis on it. So having an IDE booted to that job is an overkill, so can we use the plugin code without the eclipse extension?

Which files should we look into?

  1. Does the callgraph algorithm require building the source code first? (works on .class or .java)

Since we want to do a static analysis on the code is this really required to build the project and then do it?

@atamrawi

This comment has been minimized.

Copy link

atamrawi commented Feb 11, 2019

Atlas is simply an Eclipse plugin, so you cannot run it without running Eclipse. However, you can export whatever data (call relation) to a file format of your choice by writing a custom Atlas script via a custom Atlas plugin. You can easily create a demo Atlas plugin with sample custom scripts through: File > New > Other > Atlas > Sample Atlas Plug-in Project. Once the project is created, please take a look at the class "CallGraphAtlasScript" that can answer your first question.

For the second question, the call graph algorithm stems call relation information from Atlas code map which requires having a compilable source code (.java). Atlas can work on Jimple an intermediate representation of Java bytecode.

@benjholla

This comment has been minimized.

Copy link
Member

benjholla commented Feb 12, 2019

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.