public class Guo
{
public static void rint(String s)
{
System.out.print(s);
}
public static void rintln(String s)
{
System.out.println(s);
}
}
生成Guo.class以后,我就把他放到了D:\com\guoshuming文件夹下。又用
jar cvf p.jar com生成了p.jar,又把p.jar剪切到了D盘根目录,在classpath中也加入了,p.jar的路径。我在建一个A.JAVA代码如下;
import com.guoshuming.Guo;
public class A 
{
   public static void main(String[] s)
   {
    Guo.rintln("asdf");
    Guo.rint(""+1254);
    Guo.rintln("edcbgasdfgafdgfg");
   }
}
报错为
--------------------配置: <默认>--------------------
C:\A.java:1: 无法访问 com.guoshuming.Guo
错误的类文件: D:\p.jar(com/guoshuming/Guo.class)
类文件包含错误的类: Guo
请删除该文件或确保该文件位于正确的类路径子目录中。
import com.guoshuming.Guo;而此时我只将Guo.class打成JAR命令如下
jar cvf xiao.jar Guo.class; 此时在配置完classpath路径就能用了,也就是说,在打JAR包的时候不加任何目录才能够应用JAR里的类??
这是什么问题,晕死。
                      ^

解决方案 »

  1.   

    你的那个类是默认包,你怎么用import com.guoshuming.Guo;
    试一试下面的
    package com.guoshuming;public class Guo
    {
    public static void rint(String s)
    {
    System.out.print(s);
    }
    public static void rintln(String s)
    {
    System.out.println(s);
    }
    }
      

  2.   

    对啊,按说你的类应该是package com.guoshuming;
      

  3.   

    对 
    你的类就应该写上 package  com.guoshuming;
      

  4.   

    同意楼上的,不然就找不到路径,虽然那个 class文件在目录下但不会被识别出来
      

  5.   

    呵呵,果然是高手,谢谢几位,还有一个比较疑惑的事。我在建JAR的时候加了个-C也就是这样。
    jar cvf p.jar -C com/ . 也能打成JAR但是就不好使。这个-C我也查过了,是指定当前目录,是以后在打包的时候不用-C吗???