我正在为IntelliJ IDEA开发一个插件。我这样做的方法是在IDEA中创建一个插件项目,然后将其打包到一个带有适当META-INF/plugin.xml
的jar中,然后从jar中安装插件。
问题在于我想在org.scala-lang:scala-library:2.11.0
上添加依赖项。我在IDEA项目中将此指定为库依赖项,但此信息似乎永远不会传递给生成的JAR。
如何以IntelliJ IDEA识别它的方式包含此信息?
答案 0 :(得分:7)
据我了解,您希望将一些库(例如scala库)与您的插件捆绑在一起。 这很简单。
转到“项目设置”,选择模块并转到“依赖关系”选项卡。设置要捆绑到的库的范围'编译'。在这个例子中,它是' checker-framework'图书馆。 ' Groovy的2.3.6'由于其范围设置为'已提供',因此不会捆绑图书馆。保存更改。
准备部署插件
然后你有插件,压缩,准备好部署(上传到repo或本地安装)在项目的根目录。它将包含lib
文件夹以及所有必需的jar。
答案 1 :(得分:3)
官方支持的插件依赖关系管理解决方案是将Gradle与gradle-intellij-plugin一起使用,通过Gradle的dependencies
或intellij.plugins
入口点。如果要在工件上添加依赖项(例如,在Maven Central上托管),则像在基于Gradle的项目中一样配置dependencies
:
buildscript {
repositories {
mavenCentral()
}
}
dependencies {
compile("org.scala-lang:scala-library:2.11.0")
}
intellij.plugins
入口点会在当前项目中添加工件,并在plugin.xml
文件中添加<depends>
标记。要在您自己的位置安装外部插件,例如,如果您使用的是Plugin Extensions功能(假设该插件位于JetBrains Plugin Repository上),请使用以下代码段:
plugins {
id "org.jetbrains.intellij" version "0.2.13"
}
intellij {
//...
plugins "org.intellij.scala:2017.2.638"
}