Skip to content

Latest commit

 

History

History
42 lines (33 loc) · 1.89 KB

README.md

File metadata and controls

42 lines (33 loc) · 1.89 KB

AspectJ scripting agent

Scripting extension for AspectJ java agent. Allow java bytecode instrumentation at jvm startup by using MVEL expression and execute code from maven artifact repositories

Any AspectJ pointcut expression available with aspect types: AROUND, BEFORE, AFTER, AFTER_RETURNING, AFTER_THROWING

For example:

    {
      "name": "org.aspect.testing.Aspect6",
      "type": "AROUND",
      "pointcut": "execution(public static void main(String[]))",
      "init": {
        "expression": "System.out.println(\"Start jvm\")"
      },
      "dispose": {
        "expression": "System.out.println(\"Stop jvm\")"
      }
    },

Agent configuration:

  • org.aspectj.weaver.loadtime.configuration = config:file/http choose "config:file" or "config:http"
  • org.aspectj.weaver.loadtime.configuration.debug = true / false
  • org.aspectj.weaver.loadtime.configuration.filter = default - all aspects from configuration or any valid MVEL expression to filter aspects by "aspectByInstance/entry/key" value
  • repo.remote.url = default - maven central or http://... valid path to other repository
  • repo.local.path = path - local directory to store maven artifacts

Thanks Steve Reed for maven classloader