java.lang.UnsatifiedLinkError:Native Library/usr/local/MATLAB/R2017a/bin/glnxa64/libnativemvm.so已加载到另一个类加载器中

java.lang.UnsatifiedLinkError:Native Library/usr/local/MATLAB/R2017a/bin/glnxa64/libnativemvm.so已加载到另一个类加载器中,matlab,mps,Matlab,Mps,我试图从Jetbrains MPS调用MATLAB函数。但是,我遇到了以下错误: 本机库/usr/local/MATLAB/R2017a/bin/glnxa64/libnativemvm.so已加载到另一个类加载器中 java.lang.UnsatifiedLinkError:Native Library/usr/local/MATLAB/R2017a/bin/glnxa64/libnativemvm.so已加载到另一个类加载器中 我使用的代码是: final String[] options

我试图从Jetbrains MPS调用MATLAB函数。但是,我遇到了以下错误:

本机库/usr/local/MATLAB/R2017a/bin/glnxa64/libnativemvm.so已加载到另一个类加载器中 java.lang.UnsatifiedLinkError:Native Library/usr/local/MATLAB/R2017a/bin/glnxa64/libnativemvm.so已加载到另一个类加载器中

我使用的代码是:

final String[] options = {"-noFigureWindows", "-r", "-cd"}; 
final MatlabEngine startMatlab; 
try { 
  startMatlab = MatlabEngine.startMatlab(options); 
  this.setMatLabReference(startMatlab); 
} catch (Exception ex) { 
  System.out.println("Exception" + ex.toString()); 
}

提前谢谢

可能是因为您在MPS旁边运行MATLAB?下面的链接建议尝试使用-nojvm-nodisplay-nosplash选项启动MATLAB引擎:

可能是因为您在MPS旁边运行MATLAB?下面的链接建议尝试使用-nojvm-nodisplay-nosplash选项启动MATLAB引擎:

我检查了该解决方案,但它不起作用。在我的例子中,只有当我构建一次,运行一次,然后再次构建时才会出现问题。事实上,最终我自己解决了这个问题,我在依赖项列表中有一个循环依赖项,这就是为什么我会出现问题的原因。我清除了循环依赖项,一切都很好。我检查了这个解决方案,但它不起作用。在我的例子中,只有当我构建一次,运行一次,然后再次构建时才会出现问题。实际上,最终我自己解决了这个问题,我在依赖项列表中有一个循环依赖项,这就是为什么我会出现问题的原因,我清除了循环依赖项,一切都很顺利。