先说说我遇到的情况吧,最近公司要开发一套工具,主要用c++实现代码。而其中一小部分用java代码实现。这就需要把java代码融入c++代码中;先说说这套工具的流程:
脚本编译各个模块=》生成的可执行成果物=》然后脚本调用
这样就有个需求了,用eclipse开发的源代码文件要用命令重新编译!!!之前一直用eclipse开发,自动编译,也没寻思这个啊???
所以特地学习一下做个小笔记:
javac:编译源文件命令;
java:执行编译完的.class字节码文件;
javac用法:javac [ options ] [ sourcefiles ] [ @files ]
options:为可配置的参数;
sourcefiles:为要编译的源文件;
这里有个地方需要注意:
package com.service;
import com.pojo.Stu;
public class MyService {
public static void main(String[] args) {
Stu stu = new Stu("123",12);
System.out.println(stu.toStr());
}
}
当我们直接编译 javac src\com\service\MyService.java 时会报错; com.pojo 包找不到
在编译的过程中,若需要相关java类的则首先在sourcefiles或@files列出的java源码文件中查找并编译,如果没找到,就在-sourcepath指定的路径中查找java源码文件
所以应该这样编译:javac src\com.pojo\*.java
*:通配符,代表该路径下所有.java文件;
或者:javac -sourcepath