gpt4 book ai didi

java - Eclipse ASTVisitor 从包或 JAR 导入声明?

转载 作者:行者123 更新时间:2023-12-01 12:16:11 25 4
gpt4 key购买 nike

我有一个 ASTVisitor 实现类,其中包含以下方法:

@Override
public boolean visit(final ImportDeclaration node) {...}

有什么方法可以查明 ImportDeclaration 是否来自 ASTVisitor 正在经历的项目的另一个包,或者是否来自 .jar = 库内容?

我尝试了node.resolveBinding().isSynthetic(),但尽管我从库中导入,但它似乎永远不是合成的。

最佳答案

好的,解决方案是将节点解析为 IBinding,然后解析为 ITypeBinding 并调用 isFromSource():

    IBinding b = node.resolveBinding();
if (b instanceof ITypeBinding && !((ITypeBinding) b).isFromSource()) {
//do stuff
}

关于java - Eclipse ASTVisitor 从包或 JAR 导入声明?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26998754/

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