0

this is a class or this is a method in text/java ファイルのクラス名またはメソッド名の前に追加する必要があります (行番号は japa から入手できます)。

ファイルリーダー/ライターでテキスト/ Javaファイルを編集しようとしました(ただし、常に最後に追加し、クラス/メソッド名の上に必要です)、pmd、japa(読み取りはできますが見つかりません)編集するオプション) およびランダムアクセスファイルインターフェイス (編集もできますが、文字を上書きする代わりに追加しません)。

これまでのところ何も役に立ちませんでした。これを達成する方法はありますか?

たとえば、元のソース コードは次のとおりです。

import java.lang.*;
class test1{
    public static void main(String[] args) {
        System.out.println("hello world");
    }
}

import java.lang.*;
/*this is a class*/
class test1{
    /*this is a method*/
    public static void main(String[] args) {
        System.out.println("hello world");
    }
}
4

2 に答える 2

0

JavaParser を使用してそれを行うことができます。ツリーにアクセスして、すべてのクラスとメソッドを見つけることができます (ビジターを使用してそれを行うか、ファイルのルート (CompilationUnit) から開始して、再帰的に node.getChildrenNodes() を呼び出すことができます)。 ClassOrInterfaceDeclaration または MethodDeclaration のインスタンスが見つかったら、メソッド node.setComment() を使用してコメントを追加するだけです

これで、DumpVisitor を使用するか、compileUnit.toString() を呼び出すだけで、(AST からソース コードに戻る) ファイルをダンプできます。

免責事項: 私は JavaParser の貢献者です

ここで他の質問をするか、GitHub で問題を開いてください。プロジェクトは現在、https://github.com/javaparser/javaparserで維持されています。

于 2015-05-22T14:49:03.913 に答える