in extractor/src/main/scala/org/jetbrains/sbt/extractors/UtilityTasks.scala [188:208]
private def isJvmPluginLoaded(project: ResolvedProject): Boolean =
isPluginLoaded(project, "sbt.plugins.JvmPlugin", defaultValue = true)
/**
* Checks whether a plugin is enabled in a given project.
*
* Implementation details:
* - reads `project.autoPlugins` and matches plugin label.
* - earlier versions of SBT 0.13.x had no `autoPlugins` field, so structural typing is used to get the data.
*
* @return true if `pluginId` is listed among `autoPlugins`, or `defaultValue` when not inspectable
*/
def isPluginLoaded(project: ResolvedProject, pluginId: String, defaultValue: Boolean): Boolean =
try {
type ResolvedProject_0_13_7 = {def autoPlugins: Seq[{ def label: String}]}
val resolvedProject_0_13_7 = project.asInstanceOf[ResolvedProject_0_13_7]
val labels = resolvedProject_0_13_7.autoPlugins.map(_.label)
labels.contains(pluginId)
} catch {
case _ : NoSuchMethodException => defaultValue
}