package怎么定义的?目录结构要和package一样

解决方案 »

  1.   

    显示:package A does not exist
      

  2.   

    如果在E:\Test下有A,B两个文件夹(package),A中有public类Demo1,
    B中类Demo2要访问A中的Demo1,该如何引入package A?你的A和B是否定义了包?package?一般有如下两种情况:
    1、A的Demo1定义了包。即:A中 Demo1有:package A
      则B中需要做的是  import A.*;
      然后设置Classpath=E:\test;%Classpath%
    2、如果A的Demo1没有设置包,即:A中的Demo1为缺省包(无名包)
      则B中不要使用Import
      但是,需要设置Classpath=E:\test\a;%classpath%这个是一般逻辑,具体你还需要详细测试一下。
      

  3.   

    这个东西又没有什么诀窍的。
    java是靠文件名和路径来找到类文件的。
    就象riverwater(小河流水)说的,
    你想让javac找到引用的类,只要告诉javac到哪里去找就好了。
    如果jdk下没找到,那就去你指定的其他目录去找,如果还没有找到,而你的classpath里有.;那就到当前目录去找,
    这里注意这个当前目录。
    如果你是在E:\test中用javac B.Demo2那当前目录就是E:\test,他当然能找到A.Demo1。
    但如果你在E:\test\B用javac Demo2,当前目录就是E:\test\B,他当然能找不到到A.Demo1。这时候你就只好
    强行让他到其他目录中去找了Classpath=%classpath%E:\test.;