java.lang.classcastexception:java.lang.class不能强制转换为myclass

erhoui1w  于 2021-05-27  发布在  Spark
关注(0)|答案(0)|浏览(294)

我在做一个项目,我有以下结构:
(1) 一个包含一些case类、traits和抽象类的api。
(2) 使用api(1)作为依赖项的主jar(api作为deps发布并在build.sbt中使用)。
(3) 我们有时需要创建jar并在运行时使用类utils将它们加载到主jar(2)中,因为我们知道这些jar也使用api(1)作为依赖项。
现在,第三点一切正常,即在运行时从jar加载类,并确保这些类正确扩展api类: clazz = classLoader.loadClass("name") return clazz.asInstanceOf[MyClass] 但是我在api中对myclass做了一个小改动,主要是在我的抽象类的签名中添加一个隐式参数,之后我就不能再识别外部JAR(在运行时加载),我不断得到以下错误:
[error] (run-main-0) java.lang.ClassCastException: java.lang.Class cannot be cast to MyClass [error] java.lang.ClassCastException: java.lang.Class cannot be cast to MyClass api中的myclass签名如下所示: abstract class MyClass (implicit val something: Type) extends AnotherClass { 任何帮助绕过这是感谢各位。如果需要,我也可以提供更多细节。谢谢

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题