diff --git a/powerjob-worker/src/main/java/tech/powerjob/worker/extension/processor/ProcessorBean.java b/powerjob-worker/src/main/java/tech/powerjob/worker/extension/processor/ProcessorBean.java index 9a0024f3..172921c5 100644 --- a/powerjob-worker/src/main/java/tech/powerjob/worker/extension/processor/ProcessorBean.java +++ b/powerjob-worker/src/main/java/tech/powerjob/worker/extension/processor/ProcessorBean.java @@ -6,7 +6,7 @@ import lombok.experimental.Accessors; import tech.powerjob.worker.core.processor.sdk.BasicProcessor; /** - * 处理器对象,理论上只需要返回 BasicProcessor,但为了扩展性还是选择封装为对象 + * 处理器对象 * * @author tjq * @since 2023/1/17 @@ -20,4 +20,9 @@ public class ProcessorBean { * 真正用来执行逻辑的处理器对象 */ private transient BasicProcessor processor; + /** + * 加载该处理器对象的 classLoader,可空,空则使用 {@link Object#getClass()#getClassLoader() 代替} + */ + private transient ClassLoader classLoader; + } diff --git a/powerjob-worker/src/main/java/tech/powerjob/worker/extension/processor/ProcessorFactory.java b/powerjob-worker/src/main/java/tech/powerjob/worker/extension/processor/ProcessorFactory.java index 00669877..9cb35a6b 100644 --- a/powerjob-worker/src/main/java/tech/powerjob/worker/extension/processor/ProcessorFactory.java +++ b/powerjob-worker/src/main/java/tech/powerjob/worker/extension/processor/ProcessorFactory.java @@ -13,7 +13,7 @@ public interface ProcessorFactory { * 根据处理器定义构建处理器对象 * 注意:Processor 为单例对象,即 PowerJob 对每一个 ProcessorBean 只调用一次 build 方法 * @param processorDefinition 处理器定义 - * @return ProcessorBean + * @return null or ProcessorBean */ ProcessorBean build(ProcessorDefinition processorDefinition); }