Java 运行时加载的类在文件夹库中的JAR文件中找不到类

Java 运行时加载的类在文件夹库中的JAR文件中找不到类,java,reflection,jar,classpath,Java,Reflection,Jar,Classpath,这很难解释。 我有一个JAR文件framework.JAR,它从一个文件夹库加载一个类sikuli.class,并执行一个函数xyz() 现在,这个sikuli.class文件使用了其他一些JAR文件,它们是API 我在创建framework.jar时添加了这些API,并将它们捆绑在其中 但是当我执行JAR文件时,它会对sikuli.class文件中的所有导入语句显示ClassNotFound 我还尝试将API JAR文件添加到类路径,即使这样也不起作用 编辑 它是 Class cls=Clas

这很难解释。 我有一个JAR文件framework.JAR,它从一个文件夹库加载一个类
sikuli.class
,并执行一个函数
xyz()
现在,这个
sikuli.class
文件使用了其他一些JAR文件,它们是API

我在创建framework.jar时添加了这些API,并将它们捆绑在其中

但是当我执行JAR文件时,它会对
sikuli.class
文件中的所有导入语句显示
ClassNotFound

我还尝试将API JAR文件添加到类路径,即使这样也不起作用

编辑

它是
Class cls=Class.forName(sClassName,true,classes)

在创建JAR文件后无法加载类
当我通过eclipse运行它时,同样的代码也会起作用。sikuli.class是通过反射加载的,ClassNotFoundException是一个选中的异常,当应用程序尝试使用其名称加载该类时会抛出该异常,但找不到合适的定义。Class类的forName方法或ClassLoader类的loadClass方法可能引发此异常。执行以下检查:1。确认所需类的名称正确无误。2.确保类路径中存在jar文件。我想,这就是问题所在。3.如果您的jar存在于类路径中,则有可能您的类路径被覆盖,或者您的应用程序正在使用jar中指定的类路径。我认为我的类路径被覆盖。我应该怎么做?在这种情况下,我建议您使用像Maven这样的构建工具。看看这个:好的,谢谢。我来看看这个。!