【发布时间】:2018-02-01 02:19:20
【问题描述】:
我想以编程方式在 Eclipse 中打开 .java 文件,即使用代码启动 Eclipse(如果尚未打开),然后打开指定的文件。
基本上,类似这样的(非工作,示例)代码:
File file = new File("path/to/file.txt");
EclipseEditor.open(file);
现在,我做了一些研究,有一段时间我认为我可以通过使用 org.eclipse.stuff 来做到这一点,就像在 this 示例中一样。但是,在尝试在我的构建路径上获取所需的包/类时出现一些错误之后,我现在在调用 EFS.getLocalFileSystem(); 时只得到一个 ExceptionInInitializerError。
我想知道这些软件包是否仅适用于 Eclipse 插件,如果不是,我如何根据需要使用它们。
如果它们只在已经运行的 Eclipse 中使用插件,那也很好 - 我的应用程序也可以作为插件使用。不过,我想避免阅读如何编写插件 - 所以如果有任何方法可以避免使用插件,我将不胜感激。
【问题讨论】:
-
我在问题中确实链接了它(“如本例中”)。它对我不起作用。
-
嗯,编写一个 Eclipse 插件非常容易。或者,您可以使用Eclipse EASE 并使用
openEditor(file)(使用/System/Resources和/System/UI模块)通过JavaScript 打开文件,就像在这个更复杂的示例中一样,但使用onStartup作为触发器:stackoverflow.com/a/40072196/6505250 -
或者您的意思是从命令行在(可能正在运行的)Eclipse IDE 中打开一个文件:
eclipse --launcher.openFile "path/to/file.txt"? -
我实际上是在选择一个文件列表,然后使用 regex-match-replace-pairs 对其进行修改。然后,我对这些选定的文件运行测试(如果它们包含任何文件),并且应该在 Eclipse 中打开那些失败的测试类以进行手动更正。我想使用批处理文件或类似的东西会起作用,但感觉很时髦:/