1.看的尚学堂的java300集敲代码报错在网上找很久没找到答案
2.下面是代码
public class JavassistTest01 {
/**
- 测试使用javassist生成一个新的类
- @param args
- @throws CannotCompileException
-
@throws NotFoundException
*/
public static void main(String[] args) throws Exception {
ClassPool pool=ClassPool.getDefault();
CtClass cc=pool.makeClass("home04.Emp");//创建属性 CtField f1=CtField.make("private int empno", cc); CtField f2=CtField.make("private String ename", cc); cc.addField(f1); cc.addField(f2); cc.writeFile("c:/MyJava");//将构造好的类写入到工作空间下 System.out.println("生成类成功!");}
}
3.下面是报错信息
Exception in thread "main" javassist.CannotCompileException: [source error] syntax error near " int empno"
at javassist.CtField.make(CtField.java:173)
at home04.JavassistTest01.main(JavassistTest01.java:23)
Caused by: compile error: syntax error near " int empno"
at javassist.compiler.Parser.parseField(Parser.java:111)
at javassist.compiler.Parser.parseMember1(Parser.java:87)
at javassist.compiler.Javac.compile(Javac.java:98)
at javassist.CtField.make(CtField.java:168)
... 1 more
第一次提问,希望有人看到解答