在终端中编译/运行Java文件
我试图运行一个调用多个文件的文件,但出现了一些错误 在当前名为day4Measurement的目录中,我有13个文件:BuggyMeasurement.java、BuggyMeasurement01.java、BuggyMeasurement02.java、BuggyMeasurement03.java、BuggyMeasurement04.java…BuggyMeasurement10.java、MeasurementTest.java和Measurement.java Measurement.java包含main()并调用所有其他文件 这是主要的() 我也有问题。以下是我得到的:在终端中编译/运行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
有什么建议吗 需要检查的一件事是确保这些文件的目录结构与包结构一致。例如,如果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
在其要编译的内容列表中,并且不会去搜索它。或者更确切地说,它是否知道得不够,这意味着必须以某种方式按顺序编译文件。