package的使用,出现异常:提示包不存在,请帮忙解决下,谢谢!

目录结构:
D:\javatest\

1在D:\javatest\下 新建c5目录, 生成TestPackage.java
package c5;

public class TestPackage

{

public static void main(String[] args)

{

System.out.println("Hello");

}

public void printInfo(String s)

{

System.out.println(s);

}

}

2 在D:\javatest\下,新建了一个“c4”目录后,在这个目录中又新建了一个文件“TestPackageUse.java”,想用来调用包“c5”中的类“TestPackage”的一个方法“printInfo”,代码如下:

import c5.TestPackage;

public class TestPackageUse

{

public static void main(String[] args)

{

printInfo("TestPackageUse");

}

}

d:\javatest\c4> javac TestPackageUse.java
此时,“javac TestPackageUse.java”,出错提示如下:

TestPackageUse.java:3:package c5 does not exist

import c5.TestPackage;

TestPackageUse.java:9: cannot resolve symbol

symbol : method printInfo (java.lang.String)

location: class TestPackageUse

printInfo("TestPackageUse");

^

2 errors

[b]问题补充:[/b]
若增加了
[b]package c4;[/b]
import c5.TestPackage;

public class TestPackageUse

{

public static void main(String[] args)

{

new TestPackage().printInfo("TestPackageUse");

}

}

c4>javac TestPackageUse.java
仍然会提示找不到包c5;
TestPackageUse.java:3:package c5 does not exist

import c5.TestPackage;

TestPackageUse.java:9: cannot resolve symbol

symbol : method printInfo (java.lang.String)

location: class TestPackageUse

printInfo("TestPackageUse");

你的TestPackageUse.java有错,改成这样

[code="java"] import c5.TestPackage;

public class TestPackageUse

{

public static void main(String[] args)

{

new TestPackage().printInfo("TestPackageUse");

}

} [/code]
你把c5整个目录考到c4目录下然后cmd进入c4下编译TestPackageUse.java

你的TestPackageUse本身是在c4目录下,却没有给他写package,所以javac是找不到c5下面的类的,所以要么你得吧c5目录放到c4目录下,要么给TestPackageUse写package c4;

[code="java"]
package c4;
import c5.TestPackage;

public class TestPackageUse

{

public static void main(String[] args)

{

new TestPackage().printInfo("TestPackageUse");

}
[/code]

除非你TestPackageUse继承自TestPackage才可以这样直接写printInfo();