[英]java.lang.NoSuchMethodError: org.glassfish.hk2.api.ServiceLocatorFactory.create
Error:错误:
java.lang.NoSuchMethodError: org.glassfish.hk2.api.ServiceLocatorFactory.create(Ljava/lang/String;Lorg/glassfish/hk2/api/ServiceLocator;Lorg/glassfish/hk2/extension/ServiceLocatorGenerator;Lorg/glassfish/hk2/api/ServiceLocatorFactory$CreatePolicy;)Lorg/glassfish/hk2/api/ServiceLocator;
org.glassfish.jersey.internal.inject.Injections._createLocator(Injections.java:138)
pom.xml pom.xml
<dependency>
<groupId>org.glassfish.jersey.containers</groupId>
<artifactId>jersey-container-servlet</artifactId>
<version>2.22.1</version>
</dependency>
web.xml网页.xml
<servlet>
<servlet-name>jersey-serlvet</servlet-name>
<servlet-class>
org.glassfish.jersey.servlet.ServletContainer
</servlet-class>
<init-param>
<param-name>jersey.config.server.provider.packages</param-name>
<param-value>...</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>jersey-serlvet</servlet-name>
<url-pattern>/prods/*</url-pattern>
</servlet-mapping>
Any comments welcomed.欢迎提出任何意见。 Thanks谢谢
you need to hk2-api
dependency into your pom.xml
you can find it below: and delete the .m2
directory clean and rebuild project and update project and run it.您需要将hk2-api
依赖项添加到pom.xml
您可以在下面找到它:并删除.m2
目录清理并重建项目并更新项目并运行它。
<dependency>
<groupId>org.glassfish.hk2</groupId>
<artifactId>hk2-api</artifactId>
<version>2.5.0-b42</version>
</dependency>
A similar issue I've faced recently and tried to check all jar's dependencies :) However, there is an easy solution for maven projects.我最近遇到了一个类似的问题,并试图检查所有 jar 的依赖项:) 但是,maven 项目有一个简单的解决方案。 Maybe it solves your issue.也许它可以解决您的问题。 Add this maven plugin;添加这个maven插件;
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-enforcer-plugin</artifactId>
<version>3.0.0-M3</version>
<configuration>
<rules>
<dependencyConvergence />
</rules>
</configuration>
</plugin>
Run this;运行这个;
mvn enforcer:enforce mvn执行者:强制执行
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.