com.alibaba.jvm.sandbox.provider.api.ModuleJarLoadingChain Maven / Gradle / Ivy
package com.alibaba.jvm.sandbox.provider.api;
import java.io.File;
/**
* 模块Jar文件加载链
*
* @author [email protected]
*/
public interface ModuleJarLoadingChain {
/**
* 加载模块Jar文件
*
* 1. 可以在这个实现中对目标期待加载的模块Jar文件进行解密,签名验证等操作
* 2. 如果判定加载失败,可以通过抛出异常的形式中断加载,sandbox将会跳过此模块Jar文件的加载
* 3. 整个模块文件的加载为一个链式的加载过程
*
*
* @param moduleJarFile 期待被加载模块Jar文件
* @throws Throwable 模块文件加载异常
*/
void loading(File moduleJarFile) throws Throwable;
}