e:\tinj\c5\TestPackage.classe:\java c5.TestPackage
解决方案 »
- com.microsoft.sqlserver.jdbc.SQLServerException
- 如何把编译好的Jar文件转为可执行文件(请详细写明)
- 刚刚学java有点疑问请各位帮帮忙
- 多个按钮使用同一个事件处理过程,怎么知道是哪一个按钮触发的?
- 在java applet 中怎么加入音频?
- 在jBuilder中如何调试运行程序
- System.currentTimeMillis()时间问题?
- 如何根据一个数据库表名判断它的所有其他列名是否是外键??同时找外键对应的表名??
- 公布一套Java实现的聊天服务器源代码~~(Socket、多线程、Server Push)
- 请教一个if语句判断的问题
- 请高手看一看!是怎么回事?
- 如何和浏览器产生一个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的人。
就这样吧,以后再探讨。
结帖。