gpt4 book ai didi

java - 无法为 '.class' 字符串模式创建 SimpleName

转载 作者:太空宇宙 更新时间:2023-11-04 08:05:58 27 4
gpt4 key购买 nike

ast.newSimpleName() 方法出现问题。

我无法创建“SomeJava.class”类型的 SimpleName。但该方法对于“SWT.None”或“SomeJava.None”等名称效果很好。

这是代码:

MethodInvocation loggerInstance = ast.newMethodInvocation();

loggerInstance.setExpression(ast.newSimpleName("Logger"));
loggerInstance.setName(ast.newSimpleName("getLogger"));

String[] name1 = {className.replace(".java", ""),"None"};
String[] name2 = {className.replace(".java", ""), "class"};

loggerInstance.arguments().add(ast.newName(name1)); // This works
loggerInstance.arguments().add(ast.newName(name2)); // This doesn't

我应该使用除 SimpleName 之外的其他名称吗?提前致谢。

<小时/>

编辑:这是我想要构造的语句:

    Logger.getLogger(ClientTest.class);

在分析过程中,我发现使用“class”文字时会出现问题。不知道如何克服这个问题。

    ast.newName("class");
ast.newSimpleName("class");

最佳答案

使用 ASTView 插件 (http://www.eclipse.org/jdt/ui/astview/index.php) 查看“ClientTest.class”的节点类型,然后构造该类型的节点。

关于java - 无法为 '.class' 字符串模式创建 SimpleName,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12085268/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com