From 2efcf0b5c8a597a04fecd9a70194377d0c7edb3f Mon Sep 17 00:00:00 2001 From: kazusa Date: Thu, 21 Aug 2025 17:19:26 +0800 Subject: [PATCH] frame plan --- .../pressmonster/agent/PressMonsterAgent.java | 4 ++++ .../pressmonster/demo/agent/SimpleAgent.java | 17 ++++++++++++----- 2 files changed, 16 insertions(+), 5 deletions(-) diff --git a/press-monster-core/src/main/java/io/github/kazusa/pressmonster/agent/PressMonsterAgent.java b/press-monster-core/src/main/java/io/github/kazusa/pressmonster/agent/PressMonsterAgent.java index d5c67fd..b096b44 100644 --- a/press-monster-core/src/main/java/io/github/kazusa/pressmonster/agent/PressMonsterAgent.java +++ b/press-monster-core/src/main/java/io/github/kazusa/pressmonster/agent/PressMonsterAgent.java @@ -39,6 +39,10 @@ public class PressMonsterAgent { } private static void initializeAgent(String agentArgs, Instrumentation inst) { + // TODO 加载配置 + // TODO 加载插件jar + // TODO 配置动态增强 + // TODO 启动核心服务 long startTime = System.currentTimeMillis(); try { logger.info("Press Monster Agent 开始初始化,参数:{}", agentArgs); diff --git a/press-monster-test/demo/src/main/java/io/github/kazusa/pressmonster/demo/agent/SimpleAgent.java b/press-monster-test/demo/src/main/java/io/github/kazusa/pressmonster/demo/agent/SimpleAgent.java index da7f366..28fe139 100644 --- a/press-monster-test/demo/src/main/java/io/github/kazusa/pressmonster/demo/agent/SimpleAgent.java +++ b/press-monster-test/demo/src/main/java/io/github/kazusa/pressmonster/demo/agent/SimpleAgent.java @@ -1,13 +1,20 @@ package io.github.kazusa.pressmonster.demo.agent; -import net.bytebuddy.agent.builder.AgentBuilder; -import net.bytebuddy.implementation.MethodDelegation; -import net.bytebuddy.matcher.ElementMatchers; -// import org.springframework.web.bind.annotation.RestController; // 注释掉,避免ClassNotFoundException +import static net.bytebuddy.matcher.ElementMatchers.isAnnotatedWith; +import static net.bytebuddy.matcher.ElementMatchers.isConstructor; +import static net.bytebuddy.matcher.ElementMatchers.isDeclaredBy; +import static net.bytebuddy.matcher.ElementMatchers.isPublic; +import static net.bytebuddy.matcher.ElementMatchers.isStatic; +import static net.bytebuddy.matcher.ElementMatchers.nameContains; +import static net.bytebuddy.matcher.ElementMatchers.nameEndsWith; +import static net.bytebuddy.matcher.ElementMatchers.nameStartsWith; +import static net.bytebuddy.matcher.ElementMatchers.named; +import static net.bytebuddy.matcher.ElementMatchers.not; import java.lang.instrument.Instrumentation; -import static net.bytebuddy.matcher.ElementMatchers.*; +import net.bytebuddy.agent.builder.AgentBuilder; +import net.bytebuddy.implementation.MethodDelegation; /** * 简单Agent示例