要求一、编写的源代码包名为
    cn.com.package.app.study
要求二、编写代码把HelloWorld的目标代码
    (class)保存到文件系统(d:\study)中。
要求三、编写代码从文件系统(d:\study)中加载
               HelloWorld目标代码,并且运行。
要求四、所有源代码不能在同一个类中,用
    javac进行编译、用jar把目标代码打包

解决方案 »

  1.   

    LZ要干什么?
    “要求一”要是不会的话就不用做JAVA了
    “要求二”文件复制,基本的IO操作。不过你的HelloWorld目标代码那里来的?指定路径还是?
    “要求三”应该是classloder的操作了,这个可以好好看看,不太容易。
    “要求四”中“所有源代码不能在同一个类中”是虾米意思?8懂!
    还有,你不是让人家帮你写所有的代码吧?如果是的话....
    自己看着办吧~~~~~~
      

  2.   

    大家都是皮皮,就帮帮忙啊
    就是用JAVA编写一段代码,把HelloWorld.CLASS保存到一个指定路径中。
    然后再编写代码从路径中中加载HelloWorld目标代码,并且运行。
    55555555555555555555555555555
      

  3.   

    要找人帮你写代码估计很难~~
    给个提示,主要就是继承classloader就好了~
      

  4.   

    好心人士请加QQ:597288966
    或MSN:[email protected]
      

  5.   

    就是用JAVA编写一段代码,把HelloWorld.CLASS保存到一个指定路径中?
    那么说HelloWorld.class已经存在?在某一个目录中?只是复制到另外一个目录里面?
    自己编写代码来加载helloWorld.然后自己写代码来运行HelloWorld?
      

  6.   

    利用JDK的File和FileInputStream或FileOutputStream等等许多的普通的IO函数就可以操作各种
    文件运行.class文件必须要含有main函数,如果不是这样的话,你可以用ClassLoader类来动态加载类
    文件,具体可以参考JDK
      

  7.   

    自己从ClassLoader继承一个子类MyClassLoader,overwrite其中的findclass(读出所有class文件中字节,然后调用defineclass).写好以后在程序中使用MyClassLoader.loadClass去加载HelloWorld,然后用反射去调用main方法.
      

  8.   

    知道ant大概可以满足你的要求,可惜不太懂,写不出代码来
      

  9.   

    给你写了段代码,写的很简单,很多hardcode,凑合看吧.
    public class MyClassLoader extends ClassLoader {
    protected Class findClass(String name) throws ClassNotFoundException {
    // TODO Auto-generated method stub
    try{
    byte[] classBytes=getAllClassBytes(name);
    return defineClass("cn.com.package.app.study.HelloWorld",classBytes,0,classBytes.length);
    }catch(Exception e){
    throw new ClassNotFoundException();
    }
    }
    public static void main(String[] args) throws Exception {
    // TODO Auto-generated method stub
    MyClassLoader loader=new MyClassLoader();
    Class clazz=loader.loadClass("d:\\study\\HelloWorld.class");
    Object o=clazz.newInstance();
    Method m=clazz.getMethod("main",new Class[]{String[].class});
    m.invoke(null,new Object[]{null});
    }
    byte[] getAllClassBytes(String name) throws IOException{
    File f=new File(name);
    FileInputStream fin=new FileInputStream(f);
    byte[] classBytes=new byte[(int) f.length()];
    fin.read(classBytes);
    return classBytes;
    }
    }
      

  10.   

    皮皮,在JB里面提示代码有错/
    "MyClassLoader.java": cannot find symbol; symbol  : class IOException, location: class MyClassLoader at line 19, column 53
    "MyClassLoader.java": cannot find symbol; symbol  : class Method, location: class MyClassLoader at line 16, column 17
    "MyClassLoader.java": cannot find symbol; symbol  : class File, location: class MyClassLoader at line 20, column 17
    "MyClassLoader.java": cannot find symbol; symbol  : class File, location: class MyClassLoader at line 20, column 28
    "MyClassLoader.java": cannot find symbol; symbol  : class FileInputStream, location: class MyClassLoader at line 21, column 17
    "MyClassLoader.java": cannot find symbol; symbol  : class FileInputStream, location: class MyClassLoader at line 21, column 41
    "MyClassLoader.java": inconvertible types; found   : File.length, required: int at line 22, column 58
      

  11.   

    把这些东西导入近来.
    import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileNotFoundException;
    import java.io.IOException;
    import java.lang.reflect.InvocationTargetException;
    import java.lang.reflect.Method;
      

  12.   

    复制class文件的我没写,自己写吧.
      

  13.   

    return defineClass("cn.com.newpack.app.study.classes.HelloWorld",classBytes,0,classBytes.length);
    错误在这行java.lang.NoClassDefFoundError: cn/com/newpack/app/study/classes/HelloWorld(wrong name: helloworld) at java.lang.ClassLoader.defineClass0(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:537) at java.lang.ClassLoader.defineClass(ClassLoader.java:448) at MyClassLoader.findClass(MyClassLoader.java:13) at java.lang.ClassLoader.loadClass(ClassLoader.java:289) at java.lang.ClassLoader.loadClass(ClassLoader.java:235) at MyClassLoader.main(MyClassLoader.java:21)Exception in thread "main"
      

  14.   

    cn.com.newpack.app.study.classes.HelloWorld 这个应该换成你的class的名字,包括包在内.
      

  15.   

    是我CLASS的名字啊,要写具体路径吗?