Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/328.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
Java问题编译命令行中的代码:包不存在…但它确实存在_Java_Command Line_Package_Javac - Fatal编程技术网

Java问题编译命令行中的代码:包不存在…但它确实存在

Java问题编译命令行中的代码:包不存在…但它确实存在,java,command-line,package,javac,Java,Command Line,Package,Javac,我正在尝试使用以下命令编译Java代码(OS X Yosemite): 但我发现以下错误(其中包括与此相关的其他错误): 我添加了两个类路径。 1.此应用程序所依赖的“.jar”的路径。 2.Application.java从中导入的包 目录结构如下所示: ├── colorcalculator │   ├── Application.java │   └── colorCalculator │   ├── Controller.java │   ├── Model.java │

我正在尝试使用以下命令编译Java代码(OS X Yosemite):

但我发现以下错误(其中包括与此相关的其他错误):

我添加了两个类路径。 1.此应用程序所依赖的“.jar”的路径。 2.Application.java从中导入的包

目录结构如下所示:

├── colorcalculator
│   ├── Application.java
│   └── colorCalculator
│       ├── Controller.java
│       ├── Model.java
│       └── View.java
└── colorcalculator.zip
我从colorcalculator目录运行该命令,因为Application.java和colorcalculator包就在这里。我做错了什么

最后,如果您愿意,请提供代码以供参考。这是一个教授的网站,所以我很确定这是正确的:


谢谢

类路径意味着包含任何适当目录的包结构的根。因此,编译器当前正在查找
。/../colorCalculator/Model.class
/colorCalculator/colorCalculator/Model.class
,而您实际上只希望它查找
/colorCalculator/Model.class

此外,在使用OSX时,应该使用:而不是;作为路径分隔符

因此,你应该:

javac -cp ../..:. Application.java
请注意,实际上您根本没有向jar文件添加路径-如果您在
。/..
中有一个jar文件,那么您实际上需要它

javac -cp ../../whatever.jar:. Application.java

类路径包括包层次结构的根。因此,由于您将包命名为colorCalculator,因此该路径的根不是“./colorCalculator”,实际上只是“.”


因此,请尝试-cp“../../;”

将您的
/colorculator
更改为仅
。嗯,我已经尝试了这些命令(修改为我的类),但它们仍然不起作用。1.我在类路径周围添加了引号。2.我指定了jar本身,但仍然收到相同的原始错误消息。@newbie:您不需要引号-这就是我删除它们的原因。最重要的变化是使用“公正”。而不是模型。你用的是什么操作系统?如果是Unix,则应使用:而不是;作为路径分隔符。我使用的是OSXYosemite@newbie:那么这就是另一个问题了。将编辑我的答案。哦,对不起。应该把它放在我原来的帖子里!
javac -cp ../..:. Application.java
javac -cp ../../whatever.jar:. Application.java