【问题标题】:Finding a TypeDeclaration in an IProject with the JDT search engine by its name使用 JDT 搜索引擎通过名称在 IProject 中查找 TypeDeclaration
【发布时间】:2017-02-12 04:03:34
【问题描述】:

如何使用 JDT 搜索引擎在 IProject 中找到 TypeDeclaration? 我想使用类的包和名称(例如"my.package.ClassName")在特定的IProject 中找到它的TypeDeclaration。

我知道我可以使用 Java AST 和比较当前包和节点名称的 AST 访问者,但我更喜欢使用字符串搜索。

【问题讨论】:

    标签: java eclipse eclipse-plugin eclipse-jdt


    【解决方案1】:

    如果你已经持有类的限定名并有项目,则无需使用搜索引擎。

    第 1 步:获取一个代表您的项目的 IJavaProject 实例:

    IJavaProject jProj = JavaCore.create(proj);
    

    第 2 步:找到代表您的班级的 IType:

    IType type = jProj.findType(fullyQualifiedname);
    

    第 3 步:获取包含的编译单元:

    ICompilationUnit cu = type.getCompilationUnit();
    

    第 4 步:将其传递给ASTParser,它将创建您的TypeDeclaration(作为CompilationUnit 的一部分):

    astParser.setSource(cu);
    

    (假设您已经有一个ASTParser,知道如何调用解析并检查生成的 AST)。

    【讨论】:

      猜你喜欢
      • 2011-11-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-09-22
      • 1970-01-01
      • 2019-01-08
      • 1970-01-01
      相关资源
      最近更新 更多