关于Java中package语句的使用和相关配置问题 e:\tinj\c5\TestPackage.classe:\java c5.TestPackage 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 我刚运行没有问题!你到.class文件包下 java TestPackage 就OK了 e:\tinj\c5\ javac TestPackage.classe:\tinj\ java c5.TestPackage 不好意思第一行是:e:\tinj\c5\ javac TestPackage.java 我当前是在“e:\tinj\c5\”目录执行操作的,“java c5.TestPackage”出错;按照上面朋友的说法,我试了一下:“e:\tinj\ java c5.TestPackage”也是可以的。真奇怪,是不是我的Path或者CLASSPATH哪个地方没有配置好吗?“xxy802(孔明在世) ”朋友,你能正常输出吗?我的怎么不行? 完全同意yhc0125(小程)的说法!!!!我以程格保证!!! 一个被package 玩弄到恼羞成怒的菜鸟说。 现在的情况是:"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); } }编译能正常通过:e:\tinj\c5\ javac TestPackage.java但是,执行:e:\tinj\c5\ java TestPackage时,出现错误提示,同原帖中的信息;---------------------------而且,我新建了一个“c4”目录后,在这个目录中又新建了一个文件“TestPackageUse.java”,想用来调用包“c5”中的类“TestPackage”的一个方法“printInfo”,代码如下:import c5.TestPackage;public class TestPackageUse{ public static void main(String[] args) { printInfo("TestPackageUse"); }} 此时,“javac TestPackageUse.java”,出错提示如下:TestPackageUse.java:3:package c5 does not existimport c5.TestPackage;TestPackageUse.java:9: cannot resolve symbolsymbol : method printInfo (java.lang.String)location: class TestPackageUse printInfo("TestPackageUse"); ^2 errors----------------------------------------------请大侠给予帮忙解决这一问题。 问题一:编译能正常通过:e:\tinj\c5\ javac TestPackage.java但是,执行:e:\tinj\c5\ java TestPackage时,出现错误提示,同原帖中的信息;java 命令的运行有误,应改为:e:\tinj>java c5.TestPackage(运行时要到包所在目录执行命令。)问题2:我把你的程序放到我这里运行通过了。可能1:你的classpath没设定好。可能2:先将几个相关目录下的*.class文件删掉,然后敲:e:\tinj\c4>javac TestPackageUse.java 试试。(打命令时,你的当前目录是有关系的) e:\tinj\c5\ java TestPackage这个地方错了,不要在包下面执行java TestPackage,应该跳出包执行 java 包名.类名 首先感谢朋友“ agipenia(很黑) ”!我下面的情况是这样的:-----------------------问题一:编译能正常通过:e:\tinj\c5\ javac TestPackage.java但是,执行:e:\tinj\c5\ java TestPackage时,出现错误提示,同原帖中的信息;java 命令的运行有误,应改为:e:\tinj>java c5.TestPackage(运行时要到包所在目录执行命令。)///从这里往上,在我机器上调试也是正常的。下面就出问题了。问题2:我把你的程序放到我这里运行通过了。可能1:你的classpath没设定好。可能2:先将几个相关目录下的*.class文件删掉,然后敲:e:\tinj\c4>javac TestPackageUse.java 试试。(打命令时,你的当前目录是有关系的)///我这里编译时还是出上面的错误信息。请问你的Classpath是如何设置的? 关于环境变量:win2000 是在windows系统的高级设置里面(enviroment variables)有3个变量要设置:classpath(用户变量)、path、JAVA_HOME(系统变量)你找到环境变量的设置画面就能看到。1:classpath 决定了有关程序运行时,程序可能找到类的的路径(比如我们的jdk,当你敲javac 命令时,jdk就会到classpath指定的目录下去寻找你import的类。)你的classpath 里面应该加入“e:\tinj\”路径和“."路径。一般“."路径是都有的,代表你javac 命令运行时的当前路径。如果你有“e:\tinj\路径的话,javac就能把你import的类容加到这个路径下形成完整的查找路径,例如:e:\tinj\c4\TestPackage.java(后面的部分就是编译器加上去的。)2:path 决定了操作系统寻找编译器的路径,所以应该加入你的jdk所在的目录,应该在你安装jdk的目录的目录下有一个bin子目录,把他的路径加进去就行了。。3:JAVA_HOME 这个路径可能在你的系统变量里面看不到,你自己新建一个,变量的值 JAVA_HOME = 你的jdk安装目录。 答楼上的朋友:我的CLASSPATH和path设置都没有问题的,只是关于package的引用不正确,因为我已经调试过很多其它的脚本,编译、运行都是很正常的。真是麻烦。 我也想不出什么问题了,我把你的程序在我这里运行都通过了我很关注你的结果,别灰心,我星期345都是在研究这个问题,最后还是搞清楚了嘛。 一个晕package的人。 噢。看来楼上的朋友也曾深受package之苦。呵呵就这样吧,以后再探讨。结帖。 那些推荐java核心技术卷2的人,你们有没有读过,买了之后悔死了 java paint 如何打包swt项目? 请教一个字符编码的问题,有点难度 jmagic添加中文乱码问题 对一道完整例题的不完全注释,大家帮忙补充一下 java中可以调用.exe文件么?谢谢 奇怪的死循环 在JBuilder中如何调用ActiveX控件。如果不用,做报表有什么其他的解决方案。JREPORT除外 谁能详细介绍标签库的用法及作用! 请高手看一看!是怎么回事? 如何和浏览器产生一个socket通讯???我还是没有解决 希望大家再帮帮忙
你到.class文件包下 java TestPackage 就OK了
按照上面朋友的说法,我试了一下:“e:\tinj\ java c5.TestPackage”也是可以的。
真奇怪,是不是我的Path或者CLASSPATH哪个地方没有配置好吗?
“xxy802(孔明在世) ”朋友,你能正常输出吗?我的怎么不行?
我以程格保证!!! 一个被package 玩弄到恼羞成怒的菜鸟说。
package c5;
public class TestPackage
{
public static void main(String[] args)
{
System.out.println("Hello");
}
public void printInfo(String s)
{
System.out.println(s);
}
}
编译能正常通过:
e:\tinj\c5\ javac TestPackage.java
但是,执行:
e:\tinj\c5\ java TestPackage
时,出现错误提示,同原帖中的信息;
---------------------------
而且,我新建了一个“c4”目录后,在这个目录中又新建了一个文件“TestPackageUse.java”,想用来调用包“c5”中的类“TestPackage”的一个方法“printInfo”,代码如下:
import c5.TestPackage;
public class TestPackageUse
{
public static void main(String[] args)
{
printInfo("TestPackageUse");
}
} 此时,“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
----------------------------------------------
请大侠给予帮忙解决这一问题。
编译能正常通过:
e:\tinj\c5\ javac TestPackage.java
但是,执行:
e:\tinj\c5\ java TestPackage
时,出现错误提示,同原帖中的信息;
java 命令的运行有误,应改为:
e:\tinj>java c5.TestPackage
(运行时要到包所在目录执行命令。)
问题2:
我把你的程序放到我这里运行通过了。
可能1:你的classpath没设定好。
可能2:先将几个相关目录下的*.class文件删掉,然后敲:
e:\tinj\c4>javac TestPackageUse.java 试试。
(打命令时,你的当前目录是有关系的)
应该跳出包执行 java 包名.类名
我下面的情况是这样的:
-----------------------
问题一:
编译能正常通过:
e:\tinj\c5\ javac TestPackage.java
但是,执行:
e:\tinj\c5\ java TestPackage
时,出现错误提示,同原帖中的信息;
java 命令的运行有误,应改为:
e:\tinj>java c5.TestPackage
(运行时要到包所在目录执行命令。)///从这里往上,在我机器上调试也是正常的。下面就出问题了。
问题2:
我把你的程序放到我这里运行通过了。
可能1:你的classpath没设定好。
可能2:先将几个相关目录下的*.class文件删掉,然后敲:
e:\tinj\c4>javac TestPackageUse.java 试试。
(打命令时,你的当前目录是有关系的)///我这里编译时还是出上面的错误信息。请问你的Classpath是如何设置的?
win2000 是在windows系统的高级设置里面(enviroment variables)
有3个变量要设置:
classpath(用户变量)、path、JAVA_HOME(系统变量)
你找到环境变量的设置画面就能看到。
1:classpath 决定了有关程序运行时,程序可能找到类的的路径
(比如我们的jdk,当你敲javac 命令时,jdk就会到classpath指定的目录下去寻找你import的类。)
你的classpath 里面应该加入“e:\tinj\”路径和“."路径。一般“."路径是都有的,代表你javac 命令运行时的当前路径。如果你有“e:\tinj\路径的话,javac就能把你import的类容加到这个路径下形成完整的查找路径,例如:
e:\tinj\c4\TestPackage.java(后面的部分就是编译器加上去的。)
2:path 决定了操作系统寻找编译器的路径,所以应该加入你的jdk所在的目录,应该在你安装jdk的目录的目录下有一个bin子目录,把他的路径加进去就行了。。
3:JAVA_HOME 这个路径可能在你的系统变量里面看不到,你自己新建一个,变量的值 JAVA_HOME = 你的jdk安装目录。
我的CLASSPATH和path设置都没有问题的,只是关于package的引用不正确,因为我已经调试过很多其它的脚本,编译、运行都是很正常的。真是麻烦。
我很关注你的结果,别灰心,我星期345都是在研究这个问题,最后还是搞清楚了嘛。 一个晕package的人。
就这样吧,以后再探讨。
结帖。