我的java编译器有问题 我的java项目的文件夹如下所示:
显然我还有2个包,delivery package
和test package
。这是一个学校项目,所以test package
已经给出,我们必须编写由delivery package
测试的test package
。
DeliveryTest.java如下所示:
import java.util.ArrayList;
import java.util.List;
import test.*;
import delivery.*;
public class DeliveryTest {
public static void main(String[] args) {
List<Test> tests = new ArrayList<Test>();
tests.add(new Test2());
tests.add(new Test3());
tests.add(new Test4());
tests.add(new Test5());
int level = 1;
for (Test test : tests) {
if (test.test()) {
++level;
}
}
System.out.println("Az elert szint: " + level);
}
}
我真的不想详细说明代码的工作和目的,我认为这不相关。
我的问题是,如果我将DeliveryTest.java编译为javac DeliveryTest.java
,它会创建类文件并成功编译,但是:在第一次编译之后,当创建所有类文件时,我对{{1}进行了任何更改它不会再次编译,只会编译delivery package
,并且在编译器完成编译后,它将返回,因为一切顺利。如果我从test package
中删除其中一个类文件,它甚至不会再次创建类文件。但是,delivery folder
在第一次编译后编译正常,它没有问题
我怎样才能实现,我可以在第一次编译后编译 delivery 包?
感谢您的帮助
答案 0 :(得分:2)
Java编译器不会查看要编译的文件。如果从命令行调用它,最好使用命名其文件夹中所有Java文件的调用。假设主文件夹是您的工作目录,
javac DeliveryTest.java delivery/*.java test/*.java
如果您不更改测试包中的文件,则可能不必使用最后一个参数。