我需要为下面指定的 java 文件运行这个 javadoc 程序。当我运行它时,我会收到以下错误消息:
错误:用于编码 UTF8 的不可映射字符
经过几项研究后,我发现当它找到特殊字符(您的 java 文件的文档)时会发生此错误,我可以摆脱它们,但这不是最佳解决方案。
我的问题是,有没有办法使用 Java 文件中包含的任何特殊字符来处理文件?尝试使用不同的 econder,但找不到合适的。
使用的特殊字符(“”、-、©、°、⌐)
public class JavaDoclet {
/** The current doc, which in this app is a single java file. */
private static RootDoc currentDoc;
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
System.out.println("==========START DOCLET=========");
String[] cmds = {"-private",
"-doclet", JavaDoclet.class.getName(),
"-docletpath", "javadocgrade",
"-encoding", "UTF-8",
"C:\\Users\\julio\\DispModel.java"};
int c = com.sun.tools.javadoc.Main.execute(cmds);
System.out.println("print c -> " + c); //Returns a 1 if it didnt get executed || processed
}
public static boolean start(RootDoc root){
currentDoc = root;
ClassDoc[] classes = currentDoc.classes();
//String tagName = "@param";
for (int i = 0; i < classes.length; i++){
System.out.println(classes[i]);
}
return true;
}