Getting Started with BLAST

This guide gets you quickly up-to-speed with our BLAST bytecode-level trace analysis framework.

Requirements

BLAST requires Java 7 or higher. All the required libraries are already included in the source bundle.

Building BLAST

BLAST is bundled as an Eclipse project. To build BLAST:

  • Import the Eclipse project into an Eclipse IDE and build it through running the build project under the Project menu
  • Use Ant with the build.xml to build the agent. For this, you need to use the ant target "make-agent-jar"

Source Structure

This Eclipse project includes a Java agent (agent-src), an analyzer (analyzer-src), and an example application (Demo).
The agent instruments the application when it's loaded, and the instrumentation calls into the Analyzer.

Running a Hello World program with BLAST

BLAST is not a stand-alone tool. BLAST is a Java agent that you use when running your application or unit test. It instruments your code, generates a detailed trace of its control and information flow, and runs a query that you implement in Java code using the BLAST API.

...

Running a JUnit test with BLAST

...

A Quick Introduction to formulating BLAST queries

...

Further reading

For further information on BLAST, please read the BLAST PPPJ'15 paper or check out the BLAST Javadoc.