2 mars sakura mars_Sakura 于 2016.03.18 17:25 提问

javac,java命令的一些问题 10C

我的jdk是装在c盘,然后我在F盘建立了一个名叫TextJava目录,然后其中建立了两个java文件,一个是A.java一个是B.java,其中A调用了B,然后在命令行中进入了源文件在的目录,就是f:\TextJava,然后javac A.java结果提示我找不到B这个符号,我的classpath变量加了.,如果我用java -cp f:\TextJava A.java这个命令却可以,运行java A就对了,可是为什么不带-cp就不行?

4个回答

u014369169
u014369169   2016.03.18 17:48

-cp与-classpath是一样的,只是cp是简写而已啊。
如果当前你要编译的java文件中引用了其它的类(比如说:继承),但该引用类的.class文件不在当前目录下,这种情况下就需要在javac命令后面加上-classpath参数,通过使用以下三种类型的方法 来指导编译器在编译的时候去指定的路径下查找引用类。

(1).绝对路径:javac -classpath c:/junit3.8.1/junit.jar Xxx.java
(2).相对路径:javac -classpath ../junit3.8.1/Junit.javr Xxx.java
(3).系统变量:javac -classpath %CLASSPATH% Xxx.java

mars_Sakura
mars_Sakura 我的.class与类是在同一个目录下,这个回答我在百度看到过,所以不好意思,不能采纳
2 年多之前 回复
bealing
bealing   Rxr 2016.03.18 18:39

把A.java B.java文件中第一行的package都去掉,应该就OK了

bealing
bealing 好吧,那我也不清楚了,可能是java运行环境的问题,因为我测试的时候就是OK的,如果你搞定了,顺便也跟我说一下咯
2 年多之前 回复
mars_Sakura
mars_Sakura 我没有使用package语句。。
2 年多之前 回复
made_differ
made_differ   2016.03.18 19:00

先编译B.java。再编译A.java

mars_Sakura
mars_Sakura 试过了,不行。。
2 年多之前 回复
zhengnan110
zhengnan110   2016.03.19 02:17

你的cmd窗口的当前目录进入了f:/testJava了吗?执行命令时所在文件夹如果没有类就只能通过cp去显式指定类路径了。不然系统也不知道去哪找。

mars_Sakura
mars_Sakura 指定了,可就是不行,只有加上-cp 被引用类的名字 类名.java 这样编译才行。。。
2 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
javac和java命令的正确使用方法
平时练习都是在命令行中编辑,运行,在编译运行过程中总是时不时被“找不到源文件……”,“找不到或者无法加载主类”搞得很烦,今天彻底搞明白原因了,总结如下: 1.javac命令 如果要编译的.java文件不带完整路径,javac会默认在当前路径中寻找要编译的.java文件。例如:Test1.java文件的存放位置是d:\com\Test1.java,而运行运行javac命令时是在c:\uers\z
cmd中,执行java命令与javac命令的区别
cmd中,执行java命令与javac命令的区别: javac:是编译命令,将java源文件编译成.class字节码文件。 例如:javac hello.java 将生成hello.class文件 java:是运行字节码文件;由java虚拟机对字节码进行解释和运行。 例如:java hello
解决有java命令,没有javac命令
今天重装系统,配置jdk和jre环境时,按照往常一样的方法,方法如下 http://jingyan.baidu.com/article/6dad5075d1dc40a123e36ea3.html 以前都是行得通的,不知道怎么回事,这次一直有问题 于是在命令行中输入set,检查下配置 发现环境变量的Path中,%JAVA_HOME%没有被替换成实际路径,所以发现这里出了问题
JAVA和JAVAC命令
什么是java和javac ? java与javac属于JDK里面的命令工具   java和javac的位置 我的JDK在windows目录(C:\ProgramFiles\Java\jdk1.7.0_60),打开目录 C:\Program Files\Java\jdk1.7.0_60\bin 可以看到java和javac 两个命令,如下图。     java和java
javac命令详解(上)
javac命令用与编译java源码文件,其语法格式如下: javac [ options ] [ sourcefiles ] [ @files ] 参数可按任意次序排列。 options                       命令行选项。 sourcefiles                 一个或多个要编译的源文件(例如 MyClass.java)。 @files
javac_command_sample
javac/java 命令简单示例。
cmd中可以运行java,但不能运行javac命令
在cmd中可以运行java,但运行javac命令时提示:'javac' 不是内部或外部命令,也不是可运行的程序或批处理文件。 原因:安装java时把jdk的路径和jre的路径选择成一样,就造成覆盖了。这时候你在lib下也找不到tools.jar和dt.jar. 解决: 1)卸载java,直接用windows自带的卸载这两个有关java的程序; 2)重新安装java,安装时有两次选择路径的机
命令行中java和javac、javap使用详解(java编译命令)
最近重新复习了一下java基础,这里便讲讲对于一个类文件如何编译、运行、反编译的。也让自己加深一下印象。 如题,首先我们在桌面,开始->运行->键入cmd 回车,进入windows命令行。进入如图所示的画面: 可知,当前默认目录为C盘Users文件夹下的Administrator文件夹。一般而言,我们习惯改变当前目录。由于windows有磁盘分区,若要跳到其他磁盘,例如E盘
windows命令行中java和javac、javap使用详解(java编译命令)
原文链接:http://www.jb51.net/article/48380.htm 最近重新复习了一下java基础,这里便讲讲对于一个类文件如何编译、运行、反编译的。也让自己加深一下印象 如题,首先我们在桌面,开始->运行->键入cmd 回车,进入windows命令行。进入如图所示的画面: 可知,当前默认目录为C盘Users文件夹下的Administrator文件夹。一
cmd无法识别javac命令
javac命令是用来编译java文件的,将java文件编译成class文件。 如果在cmd里面运行:javac -version  提示没有该命令,原因就是因为没有在系统变量path中配置JDK的安装路径。 path是windows在执行一个命令的时候所找到的路径,你把你安装的JDK目录一直到bin的路径填写到PATH中,如果里面存在其他的路径,注意路径之间用;隔开,例如: