情况是这样的:
比如:
在E:/test下有个Test.class文件.
我有个java项目叫MyPro.(MyPro本身是一个jar文件,通过调用jar里面的main方法启动的)
有没有什么办法可以将这个Test.class文件加载到MyPro项目中
可以让我通过beanshell直接调用到这个类里面的方法求高手指点一下 先谢过了!

解决方案 »

  1.   

    在 MyPro中自己写一个 类加载器 ,加载你的类了
      

  2.   

    将Test.class放在你项目的类编译路径下,可以吗?和MyPro.jar放在一个路径下。
      

  3.   

    cai5 你好,我写了自己的类加载器,但是加载之后是返回一个Class对象,我只能通过放射的方式来调用我现在想用beanshell直接执行一段"com.Test.get()"这样的脚本 
    这个时候beanshell无法找到这个类 
    请问有什么解决办法吗?
      

  4.   

    rightyq 你好:这个方式我试过,这个方法不行.但还是谢谢了.
      

  5.   

    为什么不把Test.class打包成jar,放入classpath中?
      

  6.   


    通过反射也可以啊,获得Class对象后,通过反射获得get方法(class.getDeclaredMethod("get",...))的Method对象,然后调用Method对象的invoke方法
      

  7.   

    因为这个class文件时我在项目运行过程中生成的 没办法写进jar 所以想看看有没有办法在jar外面动态加载它
    T.T
      

  8.   

    如果不存在多线程问题的话,反射一次,static保存(instance和Method对象),以后直接使用就可以了
      

  9.   

    是,但是class中的方法都是新class文件中才具有的,我每次调用方法的时候还是要用反射才可以现在就想 有没有办法能让class直接进入内存里面     这样我就可以通过beanshell调用它了