Я пытаюсь создать плагин для Intellij, но я получаю java.lang.NoClassDefFoundError
во время выполнения каждый раз, когда мой код указывает на класс в другом модуле или на внешнюю библиотеку.
Все работает нормальнов моих тестах и в песочнице через runIde
.
мне также удалось воспроизвести ошибку, создав новый проект с помощью всего лишь действия и модуля с классом и пустым методом.
root gradle:
buildscript {
ext.kotlin_version = '1.2.31'
repositories {
mavenCentral()
}
dependencies {
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
}
}
plugins {
id 'org.jetbrains.intellij' version '0.3.12'
}
group 'test'
version '1.0-SNAPSHOT'
apply plugin: 'kotlin'
repositories {
mavenCentral()
}
dependencies {
compile "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlin_version"
compile project(':testmodule')
}
compileKotlin {
kotlinOptions.jvmTarget = "1.8"
}
compileTestKotlin {
kotlinOptions.jvmTarget = "1.8"
}
intellij {
version '2018.1.6'
}
patchPluginXml {
changeNotes """
Add change notes here.<br>
<em>most HTML tags may be used</em>"""
}
действие:
package action
import com.intellij.openapi.actionSystem.*
import packages.OtherModuleClass
class TestAction : AnAction() {
override fun actionPerformed(e: AnActionEvent?) {
OtherModuleClass().otherModuleMethod()
}
}
другой класс модуля:
package packages
class OtherModuleClass {
fun otherModuleMethod() {}
}