JAVA:如何获取当前在eclipse中打开的文件名

时间:2015-08-20 06:05:40

标签: java eclipse

我为自动化框架开发了一个执行器(jar文件),这个执行器连接到远程机器并执行我在eclipse中编写的脚本并将结果返回到我的本地机器。现在我必须在使用 Ctrl + F11

在eclipse中触发执行程序之前提及文件的名称及其路径

修饰:

当我使用 Ctrl + F11 运行我的执行程序时,我希望它运行在eclipse中打开的脚本,例如我在eclipse中打开myscript.txt并点击运行,它应该执行myscript.txt

为此我需要当前在eclipse中打开的文件名。

注:的 我还没有开发插件,它只是一个简单的核心Java代码。

我尝试过以下代码:

if(PlatformUI.isWorkbenchRunning()) {
    IWorkbenchPage activePage = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage();
    String name = activePage.getActiveEditor().getEditorInput().getName();
    System.out.println(name);
}
else
    System.out.println("Work Bench Does not exist");

但它总是让我Work Bench does not exist

我是新手,请告诉我一些事情是否有意义。

- 提前谢谢

1 个答案:

答案 0 :(得分:1)

当您通过运行配置运行应用程序时,Eclipse会为此启动一个自己的javaw进程。因此,您无法以您尝试的方式从该进程内部访问Eclipse的环境。

您的问题可能有一个更简单的解决方案:

  1. 使您的应用程序期望将打开的文件作为命令行参数传递给其main方法。
  2. 在运行配置的“程序参数”部分中输入${resource_loc}${resource_loc}转换为所选资源的绝对文件系统路径。