添加用Java编译的依赖项库总是安全的吗?
这是一个场景: 我正在为jIDEA创建一个插件,因此我的代码将在另一个程序中运行。 我需要使用一些库,但我不确定该库是否会出现在jIDEA内部的运行时中 如果我将库添加为compile,那么如果在执行时该库或同一库的另一个版本已经存在,会发生什么?添加用Java编译的依赖项库总是安全的吗?,java,intellij-idea,dependency-management,intellij-plugin,conflicting-libraries,Java,Intellij Idea,Dependency Management,Intellij Plugin,Conflicting Libraries,这是一个场景: 我正在为jIDEA创建一个插件,因此我的代码将在另一个程序中运行。 我需要使用一些库,但我不确定该库是否会出现在jIDEA内部的运行时中 如果我将库添加为compile,那么如果在执行时该库或同一库的另一个版本已经存在,会发生什么? 我的插件会使用我编译的库还是会产生一些冲突 IntelliJ IDEA将每个插件加载到自己的类加载器中,这取决于主IntelliJ IDEA类加载器。如果您的插件使用的库也与IntelliJ IDEA捆绑在一起,那么它将使用捆绑版本。如果该库没有捆绑
我的插件会使用我编译的库还是会产生一些冲突 IntelliJ IDEA将每个插件加载到自己的类加载器中,这取决于主IntelliJ IDEA类加载器。如果您的插件使用的库也与IntelliJ IDEA捆绑在一起,那么它将使用捆绑版本。如果该库没有捆绑,则将使用您的版本,即使其他插件使用同一库的不同版本。您可以通过查看IntelliJ IDEA安装的lib目录来检查哪些库是捆绑的。您的插件不会与程序的其余部分位于同一区域。它将被自己的类加载器封装,它甚至不知道其他东西是否使用相同的库。