Javaparser添加单个值的注释

发布于 2025-01-19 21:06:05 字数 398 浏览 0 评论 0原文

我正在尝试解析 java 文件以向类添加注释。 我有一个像这样的类

Class A{
}

,我希望它变得像

@Foo(Bar)
ClassA{
}

现在我正在使用类似的访问者:

public void visit(ClassOrInterfaceDeclaration n, Object arg){
        n.addAnnotation("Foo");
        SingleMemberAnnotationExpr expr=(SingleMemberAnnotationExpr)n.getAnnotation(0);
    }

现在我有注释,但我不明白你如何设置值

I'm tryng to parse a java file to add annotation to the classes.
I have a class like

Class A{
}

And i want it to become like

@Foo(Bar)
ClassA{
}

At the moment i'm using a visitor with like:

public void visit(ClassOrInterfaceDeclaration n, Object arg){
        n.addAnnotation("Foo");
        SingleMemberAnnotationExpr expr=(SingleMemberAnnotationExpr)n.getAnnotation(0);
    }

Now i have the annotation but i don't get how you set the value

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

浊酒尽余欢 2025-01-26 21:06:05

您可以使用 ClassOrInterfaceDeclaration.addSingleMemberAnnotation(String name , String value) 如下所示:

node.addSingleMemberAnnotation("Foo", "\"/a/b/c\"");

您可以从此 java doc 参考:
https://www.javadoc.io/doc/com.github.javaparser/javaparser-core/3.3.2/com/github/javaparser/ast/nodeTypes/NodeWithAnnotations.html#addSingleMemberAnnotation-java.lang.String -java.lang.String-

You can use ClassOrInterfaceDeclaration.addSingleMemberAnnotation(String name , String value) like below :

node.addSingleMemberAnnotation("Foo", "\"/a/b/c\"");

You can refer from this java doc :
https://www.javadoc.io/doc/com.github.javaparser/javaparser-core/3.3.2/com/github/javaparser/ast/nodeTypes/NodeWithAnnotations.html#addSingleMemberAnnotation-java.lang.String-java.lang.String-

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文