自定义 Jetbrains 插件 - 缺少依赖项
Posted
技术标签:
【中文标题】自定义 Jetbrains 插件 - 缺少依赖项【英文标题】:Custom Jetbrains Plugin - Missing Dependency 【发布时间】:2021-12-02 10:54:00 【问题描述】:我正在尝试按照本教程 - https://plugins.jetbrains.com/docs/intellij/line-marker-provider.html 为 Clion 构建我自己的自定义线标记。我的问题是关于 plugin.xml
文件中扩展标签上的语言属性...
<extensions defaultExtensionNs="com.intellij">
<codeInsight.lineMarkerProvider language="JAVA"
implementationClass="org.intellij.sdk.language.SimpleLineMarkerProvider"/>
</extensions>
当我添加这个扩展时,language="JAVA"
会以红色突出显示。我需要添加什么插件/依赖项才能解决这个问题?
我的 IDE 也无法从提供的 sn-p 解析 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()
【问题讨论】:
您可以使用社区 Open API 论坛提出与插件开发相关的问题:intellij-support.jetbrains.com/hc/en-us/community/topics/…。 【参考方案1】:你必须在build.gradle
中添加对java
插件的依赖,就像这样
intellij
plugins = ['java']
有关插件依赖项的更多信息,请参阅IntelliJ Dev Guide。
您所遵循的教程旨在添加对新语言的支持,而不是向 Java(现有语言:p)添加行标记。插件依赖项完全超出了该教程的范围。
【讨论】:
以上是关于自定义 Jetbrains 插件 - 缺少依赖项的主要内容,如果未能解决你的问题,请参考以下文章
Android Studio 缺少必要的插件 org.jetbrains.android
Android Studio 缺少 MAC ERROR 的必要插件 org.jetbrains.android