在遵循https://github.com/jenkinsci/job-dsl-plugin/blob/master/docs/IDE-Support.md的指南时,我将以下GDSL文件添加到了我的项目中
def jobPath = /.*\/jobs\/.*\.groovy/
def ctx = context(pathRegexp: jobPath)
contributor(ctx, {
delegatesTo(findClass('javaposse.jobdsl.dsl.DslFactory'))
})
字符串
IntelliJ将delegatesTo
调用用黄色加下划线,并显示警告消息
'delegatesTo' cannot be applied to '(com.intellij.psi.PsiClass)'
型
如何解决黄色下划线问题?
1条答案
按热度按时间q7solyqu1#
此警告是无害的,可以忽略。GDSL是正确的,并将工作。
如果您仍然想解决黄色下划线,则需要添加相关的IntelliJ类(即
com.intellij.psi.PsiElement
和com.intellij.psi.PsiClass
)添加到项目的类路径中,以便IDE在分析文件时看到该类型。英雄之旅
如果您按照https://plugins.jetbrains.com/docs/intellij/tools-gradle-intellij-plugin.html#usage指南为Gradle项目启用IntelliJ插件支持
字符串
那么你最终会下载500MB以上的工件,
型
当解压缩并放在classpath上时(gradle intellij插件可以为您做到这一点),它们包含
com.intellij.psi.PsiClass
,使IDE感到高兴。对于一个黄色下划线来说,下载的数据太多了,因此,在研究了https://www.jetbrains.com/intellij-repository/releases/之后,我注意到可以从https://www.jetbrains.com/intellij-repository/releases/com/jetbrains/intellij/java/java-impl/232.8660.185/java-impl-232.8660.185.jar下载相同的文件。
这建议我只在单个JAR文件上添加项目依赖项
型
不过,它并不比以前更好,因为该工件自己引入了许多传递依赖项。
最终解决方案
但是,事实证明,Psi类位于其中两个依赖项中,因此只需添加
型