如何在没有Eclipse的情况下创建Project

时间:2011-06-02 11:57:54

标签: java eclipse eclipse-plugin

我正在尝试将第三部分Eclipse的插件复制, 但是我需要创建一个IProject实例来传递JavaCore.create(instance)以获取IJavaProject的实例。

这个应用程序不会有工作空间,并且会更好地依赖eclipse的库,尽可能少。

所以我不能用:

ResourcesPlugin.getWorkspace().getRoot().getProject(...);

当我尝试启动程序时,我收到了此错误报告:

Exception in thread "main" java.lang.IllegalStateException: Workspace is closed.
    at org.eclipse.core.resources.ResourcesPlugin.getWorkspace(ResourcesPlugin.java:367)
    at gr.uom.java.jdeodorant.helpers.JavaProjectHelper.createJavaProject(JavaProjectHelper.java:55)
    at gr.uom.java.jdeodorant.refactoring.actions.Index.initializeJavaProject(Index.java:28)
    at gr.uom.java.jdeodorant.refactoring.actions.Index.main(Index.java:53)

那么有没有办法在Eclipse之外创建这个实例,只是传递我需要的项目路径? 一些想法?

1 个答案:

答案 0 :(得分:3)

答案简短:不。

工作空间需要启动OSGi框架,并设置osgi.instance.area属性。它还需要启动其他一些 org.eclipse.core.runtime 服务。

JavaCore.create(*)在JDT中...... org.eclipse.jdt.core 的部分可能在没有UI工作台的情况下运行,但这实际上取决于哪些部分。

可以运行包含 org.eclipse.core.runtime org.eclipse.core.resources (工作空间)的HEADLESS RCP应用程序,而不包括任何UI组件,但如果不启动OSGi和核心运行时,您将无法使用工作区。