JAVA 同时编译多个java文件

博主近期在用JNI时,直接有一篇JNI的demo:
https://blog.csdn.net/Applying/article/details/81572167
在生成头文件的时候,发现在某个java文件中,使用了其他的自己定义的类,发现没有办法通过我们熟悉的javac xx.java 来直接编译,所以查阅了一些资料,总结了一下:
关于java编译的过程,最熟悉的便是:通过javac命令生成.class文件
这里写图片描述
但,如果有java文件中包含其他的类的话,例如下面的Main类中包含了Person类
Main.java:
JAVA 同时编译多个java文件_第1张图片
Person.java:
JAVA 同时编译多个java文件_第2张图片
当你直接通过javac命令编译Main.java的时候,就会发现找不到Person这个定义的类:
JAVA 同时编译多个java文件_第3张图片
这里有一种方法,就是将那个Person类直接写到Main类中:
JAVA 同时编译多个java文件_第4张图片
然后再直接通过javac指令可以直接生成两个.class文件
JAVA 同时编译多个java文件_第5张图片
但上面这种处理方法存在着巨大的局限性,毕竟如果类多的话,不可能都写在同一个类。
正确的处理方式是,通过:javac -d ./ ./*.java 这个指令,将两个java文件同时进行编译,生成.class文件
JAVA 同时编译多个java文件_第6张图片
如果想生成在当前目录下,可以:javac -d ../ ./*.java
JAVA 同时编译多个java文件_第7张图片

你可能感兴趣的:(JAVA基础)