标签: nosuchmethoderror

如何修复NoSuchMethodError?

NoSuchMethodError在运行Java程序时遇到错误.怎么了,怎么解决?

java nosuchmethoderror

162
推荐指数
11
解决办法
30万
查看次数

解释java.lang.NoSuchMethodError消息

我收到以下运行时错误消息(以及堆栈跟踪的第一行,指向第94行).我试图弄清楚为什么它说不存在这样的方法.

java.lang.NoSuchMethodError: 
com.sun.tools.doclets.formats.html.SubWriterHolderWriter.printDocLinkForMenu(
    ILcom/sun/javadoc/ClassDoc;Lcom/sun/javadoc/MemberDoc;
    Ljava/lang/String;Z)Ljava/lang/String;
at com.sun.tools.doclets.formats.html.AbstractExecutableMemberWriter.writeSummaryLink(
    AbstractExecutableMemberWriter.java:94)
Run Code Online (Sandbox Code Playgroud)

writeSummaryLink的第94行如下所示.

问题
"ILcom"或"Z"是什么意思?
为什么括号中有四种类型(ILcom/sun/javadoc/ClassDoc; Lcom/sun/javadoc/MemberDoc; Ljava/lang/String; Z),括号后面有一个Ljava/lang/String; 当方法printDocLinkForMenu显然有五个参数?

代码详细信息
writeSummaryLink方法是:

protected void writeSummaryLink(int context, ClassDoc cd, ProgramElementDoc member) {
    ExecutableMemberDoc emd = (ExecutableMemberDoc)member;
    String name = emd.name();
    writer.strong();
    writer.printDocLinkForMenu(context, cd, (MemberDoc) emd, name, false);  // 94
    writer.strongEnd();
    writer.displayLength = name.length();
    writeParameters(emd, false);
}
Run Code Online (Sandbox Code Playgroud)

这是第94行调用的方法:

public void printDocLinkForMenu(int context, ClassDoc classDoc, MemberDoc doc,
        String label, boolean strong) {
    String docLink = getDocLink(context, classDoc, doc, label, strong);
    print(deleteParameterAnchors(docLink));
}
Run Code Online (Sandbox Code Playgroud)

java nosuchmethoderror

66
推荐指数
2
解决办法
7万
查看次数

"错误:在MyClass类中找不到主要方法,请将主方法定义为......"

新Java程序员在尝试运行Java程序时经常会遇到这些消息.


Error: Main method not found in class MyClass, please define the main method as:
   public static void main(String[] args)
or a JavaFX application class must extend javafx.application.Application
Run Code Online (Sandbox Code Playgroud)
Error: Main method is not static in class MyClass, please define the main method as:
   public static void main(String[] args)
Run Code Online (Sandbox Code Playgroud)
Error: Main method must return a value of type void in class MyClass, please
define the main method as:
   public static void main(String[] args)
Run Code Online (Sandbox Code Playgroud)
java.lang.NoSuchMethodError: main
Exception in thread "main"
Run Code Online (Sandbox Code Playgroud)

这是什么意思,什么可以导致它,以及应该怎么做才能解决它?

java program-entry-point runtime-error nosuchmethoderror

58
推荐指数
4
解决办法
21万
查看次数

在运行Spring MVC应用程序时获取NoSuchMethodError:Spring Boot中的javax.servlet.ServletContext.addServlet

当我尝试使用Spring启动运行Spring MVC应用程序时,我遇到了异常...

ContainerBase: A child container failed during start
java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Tomcat].StandardHost[localhost].StandardContext[]]
    at java.util.concurrent.FutureTask.report(FutureTask.java:122)
    at java.util.concurrent.FutureTask.get(FutureTask.java:188)
    at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:1123)
    at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:799)
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559)
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549)
    at java.util.concurrent.FutureTask.run(FutureTask.java:262)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at java.lang.Thread.run(Thread.java:745)
Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Tomcat].StandardHost[localhost].StandardContext[]]
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154)
    ... 6 more
Caused by: java.lang.NoSuchMethodError: javax.servlet.ServletContext.addServlet(Ljava/lang/String;Ljavax/servlet/Servlet;)Ljavax/servlet/ServletRegistration$Dynamic;
    at org.springframework.boot.context.embedded.ServletRegistrationBean.onStartup(ServletRegistrationBean.java:166)
    at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext$1.onStartup(EmbeddedWebApplicationContext.java:214)
    at org.springframework.boot.context.embedded.tomcat.ServletContextInitializerLifecycleListener.lifecycleEvent(ServletContextInitializerLifecycleListener.java:54)
    at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
    at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90)
    at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5355)
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
    ... 6 more
Run Code Online (Sandbox Code Playgroud)

java spring-mvc nosuchmethoderror spring-boot lifecycleexception

38
推荐指数
8
解决办法
5万
查看次数

解决Apache Spark中的依赖性问题

构建和部署Spark应用程序时的常见问题是:

  • java.lang.ClassNotFoundException.
  • object x is not a member of package y 编译错误.
  • java.lang.NoSuchMethodError

如何解决这些问题?

java scala nosuchmethoderror classnotfoundexception apache-spark

30
推荐指数
2
解决办法
1万
查看次数

Java"NoSuchMethodError"

我越来越:

NoSuchMethodError: com.foo.SomeService.doSmth()Z
Run Code Online (Sandbox Code Playgroud)

我是否正确理解这'Z'意味着doSmth()方法的返回类型是布尔值?如果为true,那么这种方法确实不存在,因为此方法返回一些Collection.但另一方面,如果我调用此方法,我不会将其返回值赋给任何变量.我只是这样调用这个方法:

service.doSmth();
Run Code Online (Sandbox Code Playgroud)

有什么想法发生这个错误?存在所有必需的JAR文件,并且此类中的所有其他方法似乎都存在.

java nosuchmethoderror

25
推荐指数
3
解决办法
5万
查看次数

Jackson ObjectMapper()构造函数抛出NoSuchMethod

我正在使用Jackson示例代码反序列化POJO:

ObjectMapper m = new ObjectMapper();
Run Code Online (Sandbox Code Playgroud)

该行抛出NoSuchMethodError:

Exception in thread "main" java.lang.NoSuchMethodError: org.codehaus.jackson.type.JavaType.<init>(Ljava/lang/Class;)V
    at org.codehaus.jackson.map.type.TypeBase.<init>(TypeBase.java:15)
    at org.codehaus.jackson.map.type.SimpleType.<init>(SimpleType.java:45)
    at org.codehaus.jackson.map.type.SimpleType.<init>(SimpleType.java:40)
    at org.codehaus.jackson.map.type.TypeBindings.<clinit>(TypeBindings.java:18)
    at org.codehaus.jackson.map.type.TypeFactory._fromType(TypeFactory.java:525)
    at org.codehaus.jackson.map.type.TypeFactory.type(TypeFactory.java:61)
    at org.codehaus.jackson.map.ObjectMapper.<clinit>(ObjectMapper.java:179)
    at com.me.util.ctrl.BillingJobStatus.fromJson(BillingJobStatus.java:37)
Run Code Online (Sandbox Code Playgroud)

我不明白

java json nosuchmethoderror jackson

23
推荐指数
3
解决办法
4万
查看次数

(run-main-0)java.lang.NoSuchMethodError

当我使用sbt运行一个spark作业时我遇到了问题,我已经完成编译,但是当我运行命令时run,我遇到了下面的问题

 [error] (run-main-0) java.lang.NoSuchMethodError: scala.collection.immutable.HashSet$.empty()Lscala/collection/immutable/HashSet;
java.lang.NoSuchMethodError: scala.collection.immutable.HashSet$.empty()Lscala/collection/immutable/HashSet;
    at akka.actor.ActorCell$.<init>(ActorCell.scala:305)
    at akka.actor.ActorCell$.<clinit>(ActorCell.scala)
    at akka.actor.RootActorPath.$div(ActorPath.scala:152)
    at akka.actor.LocalActorRefProvider.<init>(ActorRefProvider.scala:465)
    at akka.remote.RemoteActorRefProvider.<init>(RemoteActorRefProvider.scala:124)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:422)
    at akka.actor.ReflectiveDynamicAccess$$anonfun$createInstanceFor$2.apply(DynamicAccess.scala:78)
    at scala.util.Try$.apply(Try.scala:191)
Run Code Online (Sandbox Code Playgroud)

谁知道我该怎么办?

scala nosuchmethoderror sbt apache-spark

23
推荐指数
4
解决办法
2万
查看次数

ProGuard with Android:java.lang.NoSuchMethodError:android.util.Xml.asAttributeSet

当ProGuard被禁用时,我的应用程序正常运行.

启用ProGuard后,应用程序将导出到apk并安装到模拟器中.

然后当我在模拟器中运行它时,强制关闭...

05-10 11:14:10.582: E/AndroidRuntime(759): FATAL EXCEPTION: main
05-10 11:14:10.582: E/AndroidRuntime(759): java.lang.NoSuchMethodError: android.util.Xml.asAttributeSet
05-10 11:14:10.582: E/AndroidRuntime(759):  at com.actionbarsherlock.view.MenuInflater.inflate(Unknown Source)
05-10 11:14:10.582: E/AndroidRuntime(759):  at com.g.myapp.e.onCreateOptionsMenu(Unknown Source)
05-10 11:14:10.582: E/AndroidRuntime(759):  at android.support.v4.app.Watson.onCreatePanelMenu(Unknown Source)
05-10 11:14:10.582: E/AndroidRuntime(759):  at com.actionbarsherlock.ActionBarSherlock.callbackCreateOptionsMenu(Unknown Source)
05-10 11:14:10.582: E/AndroidRuntime(759):  at com.actionbarsherlock.internal.ActionBarSherlockNative.dispatchCreateOptionsMenu(Unknown Source)
05-10 11:14:10.582: E/AndroidRuntime(759):  at com.actionbarsherlock.app.SherlockFragmentActivity.onCreatePanelMenu(Unknown Source)
05-10 11:14:10.582: E/AndroidRuntime(759):  at com.android.internal.policy.impl.PhoneWindow.preparePanel(PhoneWindow.java:393)
05-10 11:14:10.582: E/AndroidRuntime(759):  at com.android.internal.policy.impl.PhoneWindow.invalidatePanelMenu(PhoneWindow.java:747)
05-10 11:14:10.582: E/AndroidRuntime(759):  at com.actionbarsherlock.internal.ActionBarSherlockNative.dispatchInvalidateOptionsMenu(Unknown Source)
05-10 11:14:10.582: E/AndroidRuntime(759):  at com.actionbarsherlock.app.SherlockFragmentActivity.invalidateOptionsMenu(Unknown Source)
05-10 11:14:10.582: E/AndroidRuntime(759):  at com.actionbarsherlock.app.SherlockFragmentActivity.supportInvalidateOptionsMenu(Unknown Source)
05-10 11:14:10.582: …
Run Code Online (Sandbox Code Playgroud)

android proguard nosuchmethoderror

17
推荐指数
1
解决办法
5895
查看次数

在Android上使用RESTEasyClient时出现NoSuchMethodError

我正在开发一个Android应用程序并使用依赖于它的库RESTEasyClient.在运行时使用库时,我得到一个NoSuchMethodError:

java.lang.NoSuchMethodError: No direct method <init>(Ljavax/net/ssl/SSLContext;Lorg/apache/http/conn/ssl/X509HostnameVerifier;)V in class Lorg/apache/http/conn/ssl/SSLSocketFactory; or its super classes (declaration of 'org.apache.http.conn.ssl.SSLSocketFactory' appears in /system/framework/ext.jar)
                      at org.jboss.resteasy.client.jaxrs.ResteasyClientBuilder.initDefaultEngine(ResteasyClientBuilder.java:418)
                      at org.jboss.resteasy.client.jaxrs.ResteasyClientBuilder.build(ResteasyClientBuilder.java:333)
Run Code Online (Sandbox Code Playgroud)

据我了解,这是因为与Android的Apache HttpClient实现不兼容.在线搜索,我发现了各种解决方案,包括org.apache.httpconnections:httpclient在gradle依赖项中,并compile.exclude module: httpclient在几个变体中添加(以解决由此产生的冲突).我已经尝试了所有这些并且总是遇到gradle或NoSuchMethodError上面提到的错误.

是否可以RESTEasyClient在Android 上成功使用?我需要采取哪些步骤才能启用此功能?

java android nosuchmethoderror resteasy

16
推荐指数
1
解决办法
282
查看次数