将Java Project转换为IntelliJ IDEA插件?

时间:2016-02-17 23:49:05

标签: java plugins intellij-idea

我正在为IntelliJ开发一个插件,作为更大的研究团队的一部分。该插件的逻辑是作为IntelliJ IDEA中的Java项目开发和测试的。现在是开发前端的时候了,模块没有配置为插件。我应该如何将Java项目转换为插件项目?

将项目作为插件项目启动是不合理的,因为它对其他几个模块具有复杂的依赖性。

这是关于如何import existing plugins的类似问题,但是因为代码还不是插件而有所不同。

这是我到目前为止所遵循的步骤:

  1. 创建一个新的动作类(扩展AnAction)作为插件的主类。

  2. 为插件创建运行配置。我收到此错误:Run Configuration Error: No plugin module specified for configuration

  3. 按照OpherV在我上面链接的问题中提供的说明,将type="JAVA_MODULE"更改为.iml文件中的type="PLUGIN_MODULE"

  4. 第三步没有解决“运行配置错误:没有为配置问题指定插件模块”。还需要哪些其他步骤?

    我在OSX 10.11.1上使用IntelliJIDEA(Community Edition)14.1.4 Build#IC-141.1532。

1 个答案:

答案 0 :(得分:0)

我可以通过以下附加步骤将项目成功转换为插件:

  1. 在项目的根目录中创建META-INF目录。在此目录内创建plugin.xml文件。在plugin.xml中,注册您的操作。有关此文件应如何显示的示例,请参阅IntelliJ code samples

  2. 在项目视图中右键单击项目根目录(如果Cmd-1尚未打开,则为Cmd-1),然后选择“打开模块设置”(Cmd-down)。这将打开项目结构>模块>的依赖关系。

    5.1。或者,你可以通过用Cmd-打开项目结构来到这里;然后选择模块并从列表中选择项目并转到“依赖关系”选项卡。

  3. 确保模块SDK是IntelliJ Community Edition,而不是普通的Java 1.8(或者您拥有的任何版本)。 (我注意到这改变了.iml文件中的一行,但您应该在此处更改SDK,以便您可以按照here所述创建它。)

  4. 在依赖项窗口的底部,有一个加号。单击它,并按照samkass在this question的答案中给出的说明进行操作,我将在此重申更多的上下文特性,以便于遵循它们:

    7.1。单击加号按钮后,选择“Jars或目录...”

    7.2。导航到META-INF文件夹,选择它,然后单击确定

    7.3。在出现的对话框中,选择“classes”而不是“jar目录”

    7.4。确保您在运行目标中使用该模块

  5. 完成所有这些步骤后,"运行配置错误:没有为配置问题指定插件模块"离开了,我创建的运行配置工作了。我运行它,我的操作在Refactoring菜单中可用,因为我在plugin.xml中注册了它。