从其他插件调用 Scala Intellij 刷新操作

Call Scala Intellij Refresh Action From some other plugin

要求是从自定义插件调用 Scala sbt 插件操作(刷新操作)和 intelliJ 同步所有 操作。如here所述,我们可以使用以下语法从我们的自定义插件中调用其他插件的操作:-

ActionManager.getInstance().getAction(IdeActions.ACTION_COPY_REFERENCE);

有什么方法可以找出下面屏幕截图中以红色块突出显示的功能的操作名称和 ID :-

操作是 com.intellij.openapi.externalSystem.action.RefreshAllExternalProjectsAction,ID 为 ExternalSystem.RefreshAllProjects(参见 ExternalSystemActions.xml

要以编程方式触发项目刷新,您不需要调用操作。您可以使用 com.intellij.openapi.externalSystem.util.ExternalSystemUtil#refreshProjects

在 IntelliJ IDEA 2020.1 中,您还可以通过 AutoImportProjectTracker.getInstance(???).scheduleProjectRefresh()

使用实验性 com.intellij.openapi.externalSystem.autoimport.ExternalSystemProjectTracker API