小编Lig*_*num的帖子

Java 注释不适用于外部 Jar 文件

因此,我目前正在为我的命令行“操作系统”开发一个插件系统(插件是位于插件文件夹中的 jar 文件)。工作正常,但 API 不行。

我正在使用注释来获取插件主类和事件类。然而,它似乎没有找到我的注释。

这是我用来加载插件的:

public static void loadPlugin(File file)
{
    try
    {
        URL urlList[] =
        { new File("plugins/" + file.getName()).toURI().toURL() };
        URLClassLoader classLoader = new URLClassLoader(urlList);
        Class<?> pluginclass, eventclass = pluginclass = null;
        String name, version = name = null;
        Priority priority = Priority.NORMAL;

        String[] classes = Utils.getJarClasses(file, "plugin").toArray(new String[]
        {});

        for (String s : classes)
        {
            System.out.println(s);
            Class<?> c = classLoader.loadClass(s);
            Plugin p = c.getAnnotation(Plugin.class);
            EventHandler e = c.getAnnotation(EventHandler.class);

            if (p != null)
            {
                System.out.println("not null!"); …
Run Code Online (Sandbox Code Playgroud)

java annotations jar file external

3
推荐指数
1
解决办法
1407
查看次数

标签 统计

annotations ×1

external ×1

file ×1

jar ×1

java ×1