Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
添加用Java编译的依赖项库总是安全的吗?_Java_Intellij Idea_Dependency Management_Intellij Plugin_Conflicting Libraries - Fatal编程技术网

添加用Java编译的依赖项库总是安全的吗?

添加用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捆绑在一起,那么它将使用捆绑版本。如果该库没有捆绑

这是一个场景: 我正在为jIDEA创建一个插件,因此我的代码将在另一个程序中运行。 我需要使用一些库,但我不确定该库是否会出现在jIDEA内部的运行时中

如果我将库添加为compile,那么如果在执行时该库或同一库的另一个版本已经存在,会发生什么?
我的插件会使用我编译的库还是会产生一些冲突

IntelliJ IDEA将每个插件加载到自己的类加载器中,这取决于主IntelliJ IDEA类加载器。如果您的插件使用的库也与IntelliJ IDEA捆绑在一起,那么它将使用捆绑版本。如果该库没有捆绑,则将使用您的版本,即使其他插件使用同一库的不同版本。您可以通过查看IntelliJ IDEA安装的lib目录来检查哪些库是捆绑的。

您的插件不会与程序的其余部分位于同一区域。它将被自己的类加载器封装,它甚至不知道其他东西是否使用相同的库。