Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/solr/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
找不到符号错误javac命令_Java - Fatal编程技术网

找不到符号错误javac命令

找不到符号错误javac命令,java,Java,我正在使用终端编译和构建java程序。 因此,我有两个类CP1和CP2属于包名current,它们在两个单独的.java文件中实现-CP1.java和CP2.java 虽然类很简单,但代码如下 CP1.java: package current; public class CP1{ void hello(){ System.out.println("CP1 class is used");

我正在使用终端编译和构建java程序。 因此,我有两个类
CP1
CP2
属于包名
current
,它们在两个单独的.java文件中实现-
CP1.java
CP2.java
虽然类很简单,但代码如下

CP1.java:

package current;
public class CP1{
                  void hello(){
                               System.out.println("CP1 class is used");
                  }
   }
CP2.java:

package current;
public class CP2{
                  public static void main(String [] args){
                               System.out.println("CP2 class is used");
                               CP1 c= new CP1();
                  }
   }
由于CP1和CP2在同一个包中定义,因此我不导入当前包。两个.java文件都在同一目录中。java编译,结果是CP1.class文件。现在,我尝试使用-cp选项编译CP2.java,如下所示:

javac -cp . CP2.java
但是,这会导致错误消息:

symbol: class CP1    
location: class CP2
CP2.java.  error: cannot find symbol 
                  CP1=new CP1

我尝试了不同的cp路径,但仍然得到相同的错误消息。我做错了什么

缺少实例变量名,因此应为

CP1  objname = new CP1();
不是这个

CP1 = new CP1();
注意:
objname
可以替换为任何有效的变量名,因此您可以在线搜索命名指南/如何命名变量,也可以尝试

更新:按照以下步骤编译

1.)看起来您位于文件所在的位置,所以只需执行此操作

javac -d . CP1.java

javac -d . CP2.java

-d
将为您生成不存在的包。

对不起,在原始代码中,CP1 c=new CP1(),ofcourse@olzhabala你可以通过点击勾选sumbol(左边)来接受我的答案以感谢我。happy codingshouldn't你的CP2.java的类名应该是class CP2sure,这个输入错误阅读更新的答案,我已经测试过了,工作,并确保没有打字错误