我在IntelliJ IDEA 2019.3。中有一个已保存的sbt任务配置列表。在IDE窗口的右上角看起来像这样:
但是,当我升级到IntelliJ IDEA 2020.1时,这些任务无法被ide识别,并且我的清单变成这样的东西:
[这些“未知”条目中没有一个运行任务。它甚至没有打开用于修复配置的对话框窗口。如何正确地将sbt任务移植到新的IntelliJ IDEA版本中,以免丢失?
IntelliJ IDEA将每个项目的任务存储在该项目的根文件夹的.idea/runConfigurations
子文件夹中。每个保存的任务在该子文件夹中都有其自己的.xml
文件。例如,___clean__compile_.xml
:
<component name="ProjectRunConfigurationManager">
<configuration default="false" name=""; clean; compile"" type="SbtRunConfiguration" factoryName="SBT Task" show_console_on_std_err="false" show_console_on_std_out="false">
<option name="allowRunningInParallel" value="false" />
<option name="tasks" value=""; clean; compile"" />
<option name="useSbtShell" value="false" />
<option name="vmparams" value="-Xms512M -Xmx1024M -Xss1M -XX:+CMSClassUnloadingEnabled" />
<option name="workingDir" value="$PROJECT_DIR$" />
<method v="2" />
</configuration>
</component>
注意factoryName
节点的configuration
属性:factoryName="SBT Task"
。在IntelliJ 2019中,sbt任务的factoryName
为"sbt Task"
。在版本2020.1中,它更改为"SBT Task"
(“ sbt”部分变为大写)。要修复已保存的任务,请浏览.idea/runConfigurations/
文件夹中的文件,然后将每个文件中的factoryName
更改为"SBT Task"
。然后重新启动IntelliJ项目,您应该会看到sbt任务再次工作。