eclipse-jdt相关内容
在Eclipse IDE上编写Java代码时,按Control+Space将弹出内容辅助窗口。 例如,System.的内容辅助窗口将列出类System的所有可用字段和方法。 我需要通过代码访问内容辅助窗口的“数据模型”。 使用上面的示例是:给定类名System,如何检索所有可用的字段和方法? 我在grepcode.com上花了一些时间研究这三个类的源代码: org.eclipse
..
前段时间我写了一个Eclipse插件,它利用JDT来做一些解析.现在我正在考虑制作这个应用程序的命令行版本.自然,我希望重用解析代码,所以我需要让 JDT 在 Eclipse 之外工作.有什么办法可以做到这一点(也许构建一些包装器等)?是否有任何 JDT 库端口提供相同的 API/功能但独立于 Eclipse 工作? 任何帮助将不胜感激.谢谢. 解决方案 JDT 分为两个不同的部分.
..
我有以下代码 IJavaProject targetProject = null;IWorkspaceRoot root = ResourcesPlugin.getWorkspace().getRoot();for (IProject 项目:root.getProjects()) {if (project.getName().equals(projName)) {尝试 {如果(project.
..
我正在尝试开发一个 Eclipse 插件.我知道这件事的基本原理. 在一个示例插件模板中,当我们在eclipse的测试实例中单击菜单项(或下图中带有eclipse图标的按钮)时,sampleHandler.java的execute方法 被执行并出现如下图所示的弹出窗口. 每当我在代码编辑器中按下某个键(比如说退格键)而不是单击任何菜单条目(或按钮)时,我都想调用“执行"方法. S
..
在我的 Eclipse 插件中,我需要知道屏幕上可见的编辑器何时发生了变化.我目前正在获取活动编辑器,如下所示: PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().getActiveEditor() 这适用于大多数情况,但按下绿色继续按钮时除外: 如果我使用 F8 快捷键,那么活动编辑器会按预期更新.
..
我正在编写一个 Eclipse 插件,它通过几个按钮向用户展示一个视图.单击任何按钮时,我想将某个评论粘贴到用户当前正在工作的编辑器窗口中以及他指向的光标位置. 一旦用户点击按钮,编辑器窗口不再有焦点,下面的代码也不起作用. workbench.getActiveWorkbenchWindow().getActivePage().getActiveEditor() 如何在用户单击按钮之前
..
我正在编写一个 Eclipse 插件,它使用 JDT AST 的 ASTParser 来解析一个方法.我正在寻找创建特定类型对象的方法. 当我找到一个 ClassInstanceCreation 时,我会在其上调用 getType() 以查看正在实例化的类型.我想确定正在处理的完全解析类型是我认为的类型,所以我将生成的 Type 对象告诉 resolveBinding().即使没有编译错误并
..
现在在 eclipse 中,无法使用 eclipse 扩展扩展由其他插件定义的菜单:org.eclipse.ui.menus. 我想在搜索中添加一个菜单项,而不是搜索页面.由于菜单搜索是由 org.eclipse.search 定义的,我无法添加它. 但我看到 JDT 和 CDT 确实在搜索下添加了一些菜单项.有没有人知道他们是如何做到的? 感谢任何提示. 解决方案 20
..
如何让 Java 8 与 Eclipse 一起工作? 我已遵循本指南,但没有用.我也看过Eclipse Java 8 wiki 页面,但他们没有解释如何处理检出的 git存储库. 解决方案 对于 Kepler SR2 (4.3.2) 需要安装功能补丁才能获得 JAVA 8 支持.请按照以下步骤操作: Eclipse - 帮助 (MENU) > 安装新软件... 在“使用"
..
通过 Eclipse JDT API 访问节点信息的标准方法是使用访问者模式.例如: unit.accept(new MyVisitorAdapter() {@Override 公共无效访问(MethodCallExpr 节点,对象参数){System.out.println("找到的方法调用:" + node.toString());}}, 空值); 在这种情况下,要访问节点,我需要指定我感
..
eclipse中给定一个ASTNode,有什么办法可以得到对应的源代码行号吗? 解决方案 您可以使用下面的代码获取ASTNode的行号 int lineNumber = compilerUnit.getLineNumber(node.getStartPosition()) - 1; 可以使用以下代码从ASTParser获取编译单元 ASTParser parser = ASTPa
..
我正在尝试使用 JDT/AST 生成 Java 源代码.我现在有 MethodDeclaration 并且想要将代码片段(来自其他来源)添加到方法主体.代码片段可以包含任何 Java 代码,甚至是语法无效的代码.我就是找不到这样做的方法. 对于 JCodeModel,您将使用 JBlock#directStatement(String s) 方法. 有没有办法用 JDT/AST 做到这
..
我正在使用 JDT 分析 Java 代码,并将构建一个独立的分析工具,该工具依赖于 org.eclipse.jdt.core 包而不是 eclipse 插件.但是我发现我的工具在 Java 代码中出现的枚举声明节点上无法正常工作.在我由 jdt 创建的 AST 中,关键字 enum 被视为类型名而不是枚举声明.所以我想知道我应该如何确保我的工具可以正确处理枚举声明. 我使用的 jdt 包是“
..
我有一个 Eclipse 插件代码来操作项目/工作区中的类 (smcho.Hello).我可以创建一个 CompilationUnit 并对其进行一些修改,但我需要将结果保存在不同的文件中以检查两个版本之间的差异. 这是我如何获得 CompilationUnit 的代码. IWorkspaceRoot root = ResourcesPlugin.getWorkspace().getRoo
..
我正在尝试使用 eclipse 插件、JDT 和 AST(抽象语法树)修改源代码.我可以读取所有 Java 文件并对所有这些文件进行操作,但是当我使用 将这些更改(编辑)保存到文件中时 TextEdit edits = rewriter.rewriteAST();//将文本编辑应用到编译单元编辑.应用(文件);iCompilationUnit.getBuffer().setContents(
..
我正在为使用 JDT 的 IType 和 IMethod 接口的插件编写单元测试.要编写单元测试,我需要实例化这样的接口.回答这个问题展示了如何创建 AST 模型,但我没有知道如何将其转换为Java模型吗? 我的代码如下: 字符串源 ="包com.test\n" +"\n" +“导入com.test.something;"+"\n" +"公共课课{\n" +"int sum(int a,
..
我的目标是以编程方式调用 Refactor >>为 Java 源文件中的方法重命名 Eclipse 命令.重命名方法也应将更改应用于使用/引用此方法的所有实例. 我相信 JDT 有一个 Refactoring API,但找不到相同的文档或教程. 有人能指出我正确的方向吗. 编辑:运行时不需要更改. 解决方案 我认为你最有前途的方法是去 eclipse 源代码. 下载
..
我正在尝试按照 这篇文章. 这是作为输入的java代码: class 你好{你好(){int a = 0, b = 3;/* 你好 */{b = a * 3;}返回一个;}public static void main(String[] args){int z = 0, i = 3;/* 你好 */{i = z * 3;}}} 使用ASTView,显示VariableDeclaratio
..
如何将 .java 文件加载到 CompilationUnit 中?例如,假设我在当前项目中有一个 A.java 文件.我想将它加载到 CompilationUnit 中,然后将它传递给 ASTParser.仅将其作为纯文本加载不是一种选择,因为在这种情况下我似乎不会在 AST 中获取绑定信息. 解决方案 您可以使用 jdt 和 eclipse core 库加载项目. 使用以下代码可
..
Visual Studio 有一个选项可以在抛出未处理的异常时自动中断调试器,Eclipse 有类似的功能吗? 解决方案 您可以定义要在其上设置断点的精确异常列表,即使这些异常未被捕获(这应该相当于“未处理")
..