在我的pom.xml中,我有一个SikuliX Jar,它对jna平台具有传递依赖。如下图所示,版本4.5.2已覆盖版本5.4.0。但我不明白,如何覆盖此版本,因为我尚未为jna平台指定任何依赖关系。我还验证了没有任何依赖项正在获取此jar。
[请帮助我理解为什么会这样。任何详细的文档,将不胜感激。
相关依赖项:-
<dependency>
<groupId>com.sikulix</groupId>
<artifactId>sikulixapi</artifactId>
<version>2.0.4</version>
<exclusions>
<exclusion>
<groupId>net.java.dev.jna</groupId>
<artifactId>jna</artifactId>
</exclusion>
</exclusions>
</dependency>
谢谢
由于您使用的是Spring Boot,如此处建议(这也是这种行为的原因):
java.lang.NoClassDefFoundError: com/sun/jna/platform/win32/SspiUtil$ManagedSecBufferDesc #882
您可以更改依赖关系的顺序,或指定确切的版本,例如:
<dependency>
<groupId>net.java.dev.jna</groupId>
<artifactId>jna-platform</artifactId>
<version>5.4.0</version>
</dependency>
或添加此属性:
<jna.version>5.4.0</jna.version>