我正在尝试发送一个类文件,以便将“工作”从客户端卸载到服务器。 我发送了一个类文件“MyClass.class”并成功接收它为“MyFooClass.class”。
我需要在服务器端执行MyFooClass的main()并返回结果。
我试图用类加载器加载MyFooClass但得到ClassNotFoundException。
请帮助。
阿迪蒂亚
答案 0 :(得分:3)
除非您正在执行RMI,否则“服务器”端将不会在其类路径中使用该类,因此会因ClassNotFoundException而失败。
现在更大的问题是你为什么要送全班?我认为在服务器上安装类然后在客户端上发送类的状态的文本表示(json,xml,yaml,csv)然后让服务器读取表示,创建类会更容易( es)它需要并执行工作。
答案 1 :(得分:1)
是的,您不应该重命名该课程。类加载器将仅搜索MyFooClass.class,但可用的是MyClass.class ..因此,它会抛出异常,说明预期的MyClass.class不可用。
答案 2 :(得分:0)
类名和文件名必须匹配。所以你不能简单地重命名文件。