编译条件
待编译的类目录:C:\work\workspace\my\my-utils\src\main\java\com\my\jvm\processor
cd C:\work\workspace\my\my-utils\src\main\java\com\my\jvm\processor
1.中文乱码
javac NameChecker.java
改成:
javac -encoding utf-8 NameChecker.java
2.引用其他类的时候,报找不到符号
(1)javac -encoding utf-8 *.java
(2) 换到src\main\java目录下:cd C:\work\workspace\my\my-utils\src\main\java
javac -encoding utf-8 com/my/jvm/processor/NameCheckProcessor.java
3. javac -processor报错
(1)java.lang.NoClassDefFoundError: NameCheckProcessor (wrong name: com/my/jvm/processor/NameCheckProcessor)
javac -processor NameCheckProcessor -encoding utf-8 .\BADLY_NAMED_CODE.java
(2)错误: 找不到注释处理程序 'com.my.jvm.processor.NameCheckProcessor'
javac -processor com.my.jvm.processor.NameCheckProcessor -encoding utf-8 .\BADLY_NAMED_CODE.java
因为有包名的缘故,如果直接在包下执行javac或者java 这样是找不到 class文件的。
解决:
cd C:\work\workspace\my\my-utils\src\main\java
javac -processor com.my.jvm.processor.NameCheckProcessor -encoding utf-8 com\my\jvm\processor\BADLY_NAMED_CODE.java