Skip to content

Compile Runtime Agent

Yun Lin edited this page Dec 8, 2020 · 2 revisions

Microbat has an Eclipse user interface which runs an agent (i.e., microbat instrument agent) to track program execution information. Moreover, the agent component serves as both a running component and a library to interact with the Eclipse interface.

The following is the design dilemma: Note that, during development, an Eclipse project can depend on either a library or another Eclipse project, but not a general Java project. However, the project of microbat_instrumentator is designed as a Java project for compiling as a general Java library. It indicates that the microbat project cannot depend on microbat_instrumentator project. Thus, our solution is that, we compile microbat_instrumentator project into a microbat_instrumentator library (i.e., jar file) and let microbat eclipse project depend on the library.

Therefore, during development, we need to recompile the microbat_instrumentator project and update the microbat_instrumentator library depended by microbat project. Here, is the solution:

  1. Run microbat.tools.JarPackageTool, the console will output the following message:

The path can differ regarding your machine.

Deploy instrumentator.jar to D:/linyun/git-space/microbat/microbat/lib/instrumentator.jar
  1. Make sure that the generated instrumentator.jar in the the project folder $project_root_folder/microbat/lib/instrumentator.jar.