Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/319.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_Macos_Command Line_Terminal - Fatal编程技术网

在终端中编译/运行Java文件

在终端中编译/运行Java文件,java,macos,command-line,terminal,Java,Macos,Command Line,Terminal,我试图运行一个调用多个文件的文件,但出现了一些错误 在当前名为day4Measurement的目录中,我有13个文件:BuggyMeasurement.java、BuggyMeasurement01.java、BuggyMeasurement02.java、BuggyMeasurement03.java、BuggyMeasurement04.java…BuggyMeasurement10.java、MeasurementTest.java和Measurement.java Measurement

我试图运行一个调用多个文件的文件,但出现了一些错误

在当前名为day4Measurement的目录中,我有13个文件:BuggyMeasurement.java、BuggyMeasurement01.java、BuggyMeasurement02.java、BuggyMeasurement03.java、BuggyMeasurement04.java…BuggyMeasurement10.java、MeasurementTest.java和Measurement.java

Measurement.java包含main()并调用所有其他文件

这是主要的()

我也有问题。以下是我得到的:


有什么建议吗

需要检查的一件事是确保这些文件的目录结构与包结构一致。例如,如果ABC类的包是com.foo,那么您的ABC.java文件应该位于com/foo文件夹中。

需要检查的一件事是确保这些文件的目录结构反映了包结构。例如,如果ABC类的包是com.foo,那么您的ABC.java文件应该位于com/foo文件夹中。

使用javac*.java编译所有文件。

一旦您将所有文件都放在一个目录中(它们可能在子目录中,只要它们都在某个共享目录中),就可以使用javac*.java编译所有文件,我们称之为dir,使用以下命令:

javac -classpath dir Measurement.java
假设您正在Measurement.java所在的同一目录中运行该命令。如果不是,那么无论哪种方法都更安全,将其作为dir和Measurement.java的显式路径,例如:

javac -classpath /home/yourusername/dir /home/yourusername/dir/Measurement.java

这对java编译器说:“我想编译Measurement.java,在这里,你可以找到它需要的所有类和/或源文件。”然后它只编译Measurement.java引用的文件,因此,您不必担心意外编译所有java文件。

一旦您将所有文件都放在一个目录中(它们可能在子目录中,只要它们都在某个共享目录中),我们将其称为dir,使用以下方法:

javac -classpath dir Measurement.java
假设您正在Measurement.java所在的同一目录中运行该命令。如果不是,那么无论哪种方法都更安全,将其作为dir和Measurement.java的显式路径,例如:

javac -classpath /home/yourusername/dir /home/yourusername/dir/Measurement.java

这对java编译器说:“我想编译Measurement.java,在这里,你可以找到它需要的所有类和/或源文件。”然后它只编译Measurement.java引用的文件,因此,您不必担心意外编译所有java文件。

请不要发布文本图像,而是发布文本本身。请注意,惯用for循环更像:
for(int i=0;i请不要发布文本图像,而是发布文本本身。请注意惯用for循环更像:
for(int i=0;i@cmastudios:如果我读对了,他会问
javac
是否知道足够多的东西来查看
BuggyMeasure01。java
在它要编译的东西列表中,并且不会去搜索它。或者更确切地说,它是否知道得不够多,这意味着文件必须以某种方式按顺序编译。@cmastudios:如果我在读我不正确,他问的是
javac
是否足够了解
BuggyMeasure01.java
在其要编译的内容列表中,并且不会去搜索它。或者更确切地说,它是否知道得不够,这意味着必须以某种方式按顺序编译文件。