JetBrains / JetBrains/sbt-idea-plugin

IJ configurations are generated incorrectly if project name and lazy val name are different

Open
#72 1 comment 0 reactions 1 assignee Claimed by @mutcianm View on GitHub
bug enhancement
Dominant language
Scala
Stars
101
Forks
29
PR merge metrics
No merged PRs in 30d

Description

If when defining a top level plugin project one uses different names for the lazy val binding the project instance and `name` setting key, and then using a runner project to generate IJ artifact definitions and run configurations, the generated run configuration will reference a non-existing artifact as it's build dependency.
This happens because when importing a project from SBT IJ uses lazy val's names to reference a module(project) and run configuration generator uses `name` key to reference an artifact.
Example build with this issue:
```sbt
lazy val IntellijPluginInScala = project.in(file("."))
.enablePlugins(SbtIdeaPlugin)
.settings(
name := "myExample", // mind the name - it should be the same as lazy val name(or vice versa)
version := "1.0-SNAPSHOT",
libraryDependencies += "org.scalatest" %% "scalatest" % "3.2.0",
intellijPlugins += "org.intellij.scala::Nightly".toPlugin
)

lazy val pluginRunner = createRunnerProject(IntellijPluginInScala)
```

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.