比如我写了一个文件打包在E盘(如果包在某个文件夹下面又如何导呢?),又在F盘写了一个文件,现在F盘的文件要访问E盘包下面的文件问么导入E盘那个包?

解决方案 »

  1.   

    在环境变量里配置!!
    如果你的文件在e:\a\b\c\d
    环境变量可以配e:\a
    在需要导入包的程序里可以写package b.c.d大概是这样吧!
      

  2.   

    java动态加载.class或.jar包,楼主需要看看类加载器反射机制,都是java里比较好的东西,这里给你写个小例子
    //把编译后的A.class,放到你的F盘下
    public class A {
    public void getA()
    {
    System.out.println("证明我被执行了");
    }
    }
    //下边的代码随便放什么位置
    import java.lang.reflect.Method;
    import java.net.URL;
    import java.net.URLClassLoader;public class Test { public static void main(String[] args) throws Exception{
    URL url1=new URL("file:F:/");//包路径,根据你放.class文件的位置设置,我是把A.class放在F盘根目录下了
        URLClassLoader myClassLoader=new URLClassLoader(new URL[]{url1});//初始化类加载器,以路径[]为参数
        Class myClass=myClassLoader.loadClass("A");//加载类A
        Object obj = myClass.newInstance();//反射获得类A的对象
        /**
         * 执行类A的getA方法
         */
        Method m = myClass.getMethod("getA");
        m.invoke(obj);
    }}
      

  3.   

    两种办法:
    1、静态导入,即在环境变量中写好所有包的路径,让jvm的虚拟机的类加载器顺序去找;
    2、动态导入,在用到包时,动态加载包,楼上的代码是动态加载包的例子。
      

  4.   

    将E盘存放字节码文件的路劲配置到环境变量的CLASSPATH中,就行了。
    或者运行时,使用参数-classpath
    eg:java -classpath e:\  类名