2017-11-27 31 views
-2

Javaパーサーをにするには、既存のクラスにインナークラスを追加します。Javaパーサー新しいインナークラスの追加

私は

ClassOrInterfaceDeclaration classOrInterfaceType= cu.addClass("MyInnerClass", Modifier.PUBLIC,Modifier.STATIC); 

を試してみたが、これはない内部クラスとして、すなわちJavaクラスに新しいクラスを追加します。

ご協力いただければ幸いです。

私は次のように私は、ノード階層の外観をしたいと思います

パブリッククラスBuilderDemo {

public static class Builder{ 

} 

}

のような既存のクラスにBuilderを挿入したい: -

ClassOrInterface Nodes

任意助けに感謝します。

+2

「STATIC」を指定しました。 'static'と' inner 'は互いに排他的です。 – EJP

+0

リファレンス:[JLS#8.1.3](https://docs.oracle.com/javase/specs/jls/se8/html/jls-8.html#jls-8.1.3) – EJP

答えて

0

まず、内部クラスを追加するクラスのASTノードを見つける必要があります。あなたがやっているのは、私がCompilationUnitであるcuのクラス、つまりファイル全体を追加することです。したがって、ファイルに直接クラスを追加しています。