自定义 Jetbrains 插件 - 缺少依赖项

问题描述 投票:0回答:1

我正在尝试按照本教程为 Clion 构建自己的自定义线条标记 - https://plugins.jetbrains.com/docs/intellij/line-marker-provider.html。我的问题是关于

plugin.xml
文件中扩展标签的语言属性 ...

<extensions defaultExtensionNs="com.intellij">
  <codeInsight.lineMarkerProvider language="JAVA"
          implementationClass="org.intellij.sdk.language.SimpleLineMarkerProvider"/>
</extensions>

当我添加此扩展时,

language="JAVA"
会以红色突出显示。我需要添加什么插件/依赖项才能解决此问题?

我的 IDE 也无法解析提供的代码片段中的

PsiIdentifier
PsiMethod
...

public class MyCorrectLineMarkerProvider implements LineMarkerProvider {
  public LineMarkerInfo getLineMarkerInfo(@NotNull PsiElement element) {
    if (element instanceof PsiIdentifier && element.getParent() instanceof PsiMethod) return new LineMarkerInfo(element, ...);
    return null;
  }
}

这就是我的 build.gradle 的样子,我知道我需要添加一些其他依赖项,但我一直在关注的教程对此不是很清楚。

plugins {
    id 'org.jetbrains.intellij' version '1.2.0'
    id 'java'
}

group 'com.example'
version '1.0-SNAPSHOT'

repositories {
    mavenCentral()
}

dependencies {
    testImplementation 'org.junit.jupiter:junit-jupiter-api:5.7.0'
    testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.7.0'
}

// See https://github.com/JetBrains/gradle-intellij-plugin/
intellij {
    version = '2021.2.2'
}

runIde {
    jvmArgs '--add-exports', 'java.base/jdk.internal.vm=ALL-UNNAMED'
}

patchPluginXml {
    changeNotes = """
      Add change notes here.<br>
      <em>most HTML tags may be used</em>"""
}
test {
    useJUnitPlatform()
}
java intellij-idea intellij-plugin intellij-platform-psi
1个回答
0
投票

您必须在

java
中添加对
build.gradle
插件的依赖,就像这样

intellij {
    plugins = ['java']
}

有关插件依赖项的更多信息,请参阅 IntelliJ 开发指南

您正在学习的教程旨在添加对新语言的支持,而不是向 Java(现有语言:p)添加行标记。插件依赖关系超出了该教程的范围。

© www.soinside.com 2019 - 2024. All rights reserved.