标签: nosuchmethoderror

在布局xml中使用onClick属性会在Android对话框中导致NoSuchMethodException

我创建了一个自定义对话框和一个布局xml:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">
    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Tap Me"
        android:onClick="dialogClicked" />
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

在对话框类中,我实现了"dialogClicked(View v)"方法:

public class TestDialog extends Dialog {

 public TestDialog(final Context context)
 {
  super(context);
 }

 @Override
 protected void onCreate(final Bundle savedInstanceState)
 {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.dialog);
 }

 public void dialogClicked(final View view)
 {
  System.out.println("clicked");
 }

}
Run Code Online (Sandbox Code Playgroud)

当我点击按钮时,我得到一个NoSuchMethodException'dialogClicked'.在布局xml中设置onClick处理程序适用于活动,但不适用于对话框.有任何想法吗?我做错了什么?

android onclick nosuchmethoderror

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

在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
查看次数

RESTEasy Client + NoSuchMethodError

我正在尝试编写简单的RESTEasy客户端.下面给出的是示例代码:

Client client = ClientBuilder.newBuilder().build();
WebTarget target = client.target("http://localhost:8080/context/path");
Response response = target.request().post(Entity.entity(object, "application/json"));

//Read output in string format
String value = response.readEntity(String.class);
Run Code Online (Sandbox Code Playgroud)

我在线上得到例外:

Client client = ClientBuilder.newBuilder().build();
Run Code Online (Sandbox Code Playgroud)

我在控制台中看到以下错误:

16:07:57,678 ERROR [stderr] (http-localhost/127.0.0.1:8080-1) java.lang.NoSuchMethodError: org.jboss.resteasy.spi.ResteasyProviderFactory.<init>(Lorg/jboss/resteasy/spi/ResteasyProviderFactory;)V

16:07:57,679 ERROR [stderr] (http-localhost/127.0.0.1:8080-1)   at org.jboss.resteasy.client.jaxrs.internal.ClientConfiguration.<init>(ClientConfiguration.java:44)

16:07:57,680 ERROR [stderr] (http-localhost/127.0.0.1:8080-1)   at org.jboss.resteasy.client.jaxrs.ResteasyClientBuilder.build(ResteasyClientBuilder.java:317)

16:07:57,680 ERROR [stderr] (http-localhost/127.0.0.1:8080-1)   at org.jboss.resteasy.client.jaxrs.ResteasyClientBuilder.build(ResteasyClientBuilder.java:49)
Run Code Online (Sandbox Code Playgroud)

我在pom.xml中添加了resteasy客户端依赖性:

  <dependency>
      <groupId>org.jboss.resteasy</groupId>
      <artifactId>resteasy-client</artifactId>
      <version>3.0.8.Final</version>
  </dependency>
Run Code Online (Sandbox Code Playgroud)

我的代码部署在JBOSS EAP 6.1上.JDK版本是1.7.

更新:我也尝试在我的pom中添加resteasy jax-rs dependancy.我还通过在web.xml中添加以下行来验证是否启用了ResteasyProviderFactory:

  <listener>
    <listener-class>org.jboss.resteasy.plugins.server.servlet.ResteasyBootstrap</listener-class>
  </listener>
Run Code Online (Sandbox Code Playgroud)

请在下面找到maven dependancies列表:

<dependencies>

    <dependency>
        <groupId>org.jboss.spec.javax.ejb</groupId>
        <artifactId>jboss-ejb-api_3.1_spec</artifactId>
        <scope>provided</scope>
    </dependency>

    <dependency>
        <groupId>javax.enterprise</groupId>
        <artifactId>cdi-api</artifactId>
        <scope>provided</scope> …
Run Code Online (Sandbox Code Playgroud)

java nosuchmethoderror resteasy maven jboss6.x

15
推荐指数
2
解决办法
3万
查看次数

理解NoSuchMethod异常中的方法签名

我得到了这个例外,但解决了它.

java.lang.NoSuchMethodError: antlr.NoViableAltForCharException.<init>
(CLjava/lang/String;II)V
Run Code Online (Sandbox Code Playgroud)

但是我想知道如何解释这些消息:"(CLjava/lang/String; II)V"另外,这个"init"是否提到了NoViableAltForCharException类的构造函数?

谢谢.

java constructor exception init nosuchmethoderror

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

在v7工具栏上没有这样的方法错误

这个问题很奇怪的是,当我在我的应用程序上工作时,一切都很好,因为我去睡觉了.然后我醒了,这个错误出现在工具栏的所有XML文件中.我用Google搜索了具体的'没有这种方法'的错误,我没有运气.这是堆栈跟踪:

java.lang.NoSuchMethodError: android.graphics.drawable.VectorDrawable_Delegate.nCreateTreeFromCopy(JJ)J
at android.graphics.drawable.VectorDrawable.nCreateTreeFromCopy(VectorDrawable.java)
at android.graphics.drawable.VectorDrawable.access$400(VectorDrawable.java:204)
at android.graphics.drawable.VectorDrawable$VectorDrawableState.createNativeTreeFromCopy(VectorDrawable.java:837)
at android.graphics.drawable.VectorDrawable$VectorDrawableState.<init>(VectorDrawable.java:812)
at android.graphics.drawable.VectorDrawable.mutate(VectorDrawable.java:268)
at android.support.v7.widget.TintManager.getDrawable(TintManager.java:180)
at android.support.v7.widget.TintManager.getDrawable(TintManager.java:168)
at android.support.v7.widget.TintTypedArray.getDrawable(TintTypedArray.java:62)
at android.support.v7.widget.Toolbar.<init>(Toolbar.java:257)
at android.support.v7.widget.Toolbar.<init>(Toolbar.java:199)
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:423)
at org.jetbrains.android.uipreview.ViewLoader.createNewInstance(ViewLoader.java:465)
at org.jetbrains.android.uipreview.ViewLoader.loadClass(ViewLoader.java:172)
at org.jetbrains.android.uipreview.ViewLoader.loadView(ViewLoader.java:105)
at com.android.tools.idea.rendering.LayoutlibCallbackImpl.loadView(LayoutlibCallbackImpl.java:176)
at android.view.BridgeInflater.loadCustomView(BridgeInflater.java:247)
at android.view.BridgeInflater.createViewFromTag(BridgeInflater.java:171)
at android.view.LayoutInflater_Delegate.parseInclude(LayoutInflater_Delegate.java:157)
at android.view.LayoutInflater.parseInclude(LayoutInflater.java:902)
at android.view.LayoutInflater.rInflate_Original(LayoutInflater.java:854)
at android.view.LayoutInflater_Delegate.rInflate(LayoutInflater_Delegate.java:70)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:834)
at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:821)
at android.view.LayoutInflater.inflate(LayoutInflater.java:518)
at android.view.LayoutInflater.inflate(LayoutInflater.java:397)
at com.android.layoutlib.bridge.impl.RenderSessionImpl.inflate(RenderSessionImpl.java:317)
at com.android.layoutlib.bridge.Bridge.createSession(Bridge.java:429)
at com.android.ide.common.rendering.LayoutLibrary.createSession(LayoutLibrary.java:350)
at com.android.tools.idea.rendering.RenderTask$2.compute(RenderTask.java:520)
at com.android.tools.idea.rendering.RenderTask$2.compute(RenderTask.java:508)
at com.intellij.openapi.application.impl.ApplicationImpl.runReadAction(ApplicationImpl.java:967)
at com.android.tools.idea.rendering.RenderTask.createRenderSession(RenderTask.java:508)
at com.android.tools.idea.rendering.RenderTask.access$600(RenderTask.java:75)
at com.android.tools.idea.rendering.RenderTask$3.call(RenderTask.java:620)
at com.android.tools.idea.rendering.RenderTask$3.call(RenderTask.java:617) …
Run Code Online (Sandbox Code Playgroud)

xml nosuchmethoderror android-toolbar

14
推荐指数
2
解决办法
7082
查看次数

Scala:通过包外的结构类型访问包可见方法

这不能按预期工作(因为我试图run从外部调用包私有Services):

object Services {
 class HelloPrinter {
   private[Services] def run = "Hello"
  }  
}

val obj = new Services.HelloPrinter
Run Code Online (Sandbox Code Playgroud)

但是,令人惊讶的是这有效:

val obj: {def run: String} = new Services.HelloPrinter
obj.run
Run Code Online (Sandbox Code Playgroud)

我会说,它是编译器中的一个错误,因为HelloPrinter由于包可见性规则而与结构类型不匹配,所以它根本不应该编译!

这是程序编译但抛出运行时异常(java.lang.NoSuchMethodException)的情况:

class HelloPrinter {
  private[HelloPrinter] def run = "Hello"
}  

val obj: {def run: String} = new HelloPrinter
obj.run
Run Code Online (Sandbox Code Playgroud)

这是我缺少的语言功能或规则,还是合法的Scala中的错误?

reflection scala access-modifiers nosuchmethoderror structural-typing

13
推荐指数
1
解决办法
190
查看次数

Hibernate 5.2.7 - java.lang.NoSuchMethodError:org.hibernate.engine.spi.SessionFactoryImplementor.getProperties()Ljava/util/Map;

在Gradle Java项目中使用Hibernate 5.2.7连接到MariaDB 10.1.19时,我得到了一个 Exception in thread "main" java.lang.NoSuchMethodError: org.hibernate.engine.spi.SessionFactoryImplementor.getProperties()Ljava/util/Map;

完整的堆栈跟踪

 Exception in thread "main" java.lang.NoSuchMethodError: org.hibernate.engine.spi.SessionFactoryImplementor.getProperties()Ljava/util/Map;
at org.hibernate.internal.CacheImpl.<init>(CacheImpl.java:71)
at org.hibernate.engine.spi.CacheInitiator.initiateService(CacheInitiator.java:28)
at org.hibernate.engine.spi.CacheInitiator.initiateService(CacheInitiator.java:20)
at org.hibernate.service.internal.SessionFactoryServiceRegistryImpl.initiateService(SessionFactoryServiceRegistryImpl.java:58)
at org.hibernate.service.internal.AbstractServiceRegistryImpl.createService(AbstractServiceRegistryImpl.java:259)
at org.hibernate.service.internal.AbstractServiceRegistryImpl.initializeService(AbstractServiceRegistryImpl.java:233)
at org.hibernate.service.internal.AbstractServiceRegistryImpl.getService(AbstractServiceRegistryImpl.java:210)
at org.hibernate.service.internal.SessionFactoryServiceRegistryImpl.getService(SessionFactoryServiceRegistryImpl.java:77)
at org.hibernate.internal.SessionFactoryImpl.<init>(SessionFactoryImpl.java:240)
at org.hibernate.boot.internal.SessionFactoryBuilderImpl.build(SessionFactoryBuilderImpl.java:445)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:710)
at quantitativeAnalysis.backend.dataCollector.dataCollectorManager.createFactory(dataCollectorManager.java:280)
at quantitativeAnalysis.volatilityAnalyzer.volatilityDynamicImpl.openInstance(volatilityDynamicImpl.java:18)
at frontend.MainFrame.main(MainFrame.java:96)
Run Code Online (Sandbox Code Playgroud)

我尝试了几种方法(其他Hibernate版本5.2.65.2.3),并在互联网上寻求帮助,但没有一个建议有效.

此处发生异常:

    Configuration configuration = new Configuration().configure();

    StandardServiceRegistryBuilder ssrb = new StandardServiceRegistryBuilder().applySettings(configuration.getProperties());
    try{
        factory = configuration.buildSessionFactory(ssrb.build());
    }catch(Exception ex){
    System.err.println("Failed to configure Sessionfactory");
    ex.printStackTrace();
}
Run Code Online (Sandbox Code Playgroud)

我也尝试了以下代码导致相同的结果:

    final StandardServiceRegistry registry = new StandardServiceRegistryBuilder() …
Run Code Online (Sandbox Code Playgroud)

java hibernate nosuchmethoderror

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

错误"java.lang.NoSuchMethodError:org.jboss.logging.Logger.getMessageLogger"

我正在尝试使用spring + hibernate构建1个混合测试项目.部署后...我对这个错误感到沮丧..并在谷歌搜索但仍未使其正常工作......

Caused by: java.lang.NoSuchMethodError: org.jboss.logging.Logger.getMessageLogger(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Object;
at org.hibernate.annotations.common.util.impl.LoggerFactory.make(LoggerFactory.java:34)
at org.hibernate.annotations.common.Version.<clinit>(Version.java:34)
at org.hibernate.annotations.common.reflection.java.JavaReflectionManager.<clinit>(JavaReflectionManager.java:73)
at org.hibernate.cfg.AnnotationConfiguration.reset(AnnotationConfiguration.java:311)
at org.hibernate.cfg.Configuration.<init>(Configuration.java:216)
at org.hibernate.cfg.Configuration.<init>(Configuration.java:220)
at org.hibernate.cfg.AnnotationConfiguration.<init>(AnnotationConfiguration.java:168)
Run Code Online (Sandbox Code Playgroud)

尝试jboss-logger 3.1.0.CR2,以及各种不同的jboss-logging,不同版本.

怎么解决?

下面是附加的图像,看看是否存在任何版本的并发或缺少任何依赖... 项目的图书馆结构

java logging jboss hibernate nosuchmethoderror

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

什么版本的httpclient与Amazon SDK v 1.11.5兼容?

我正在使用Amazon Java SDK 1.11.5版(我在WEB-INF/lib目录中包含了aws-java-sdk-1.11.5.jar).我需要包含哪个版本的Apache httpclient库,它与此版本的AWS SDK兼容?我试过httpclient-4.3.4.jar,但我得到以下错误

15:34:25,366 ERROR [io.undertow.request] (default task-34) UT005023: Exception handling request to /pluginwiris_engine/app/service: java.lang.NoSuchMethodError:    org.apache.http.conn.ssl.SSLConnectionSocketFactory.<init>(Ljavax/net/ssl/SSLContext;Ljavax/net/ssl/HostnameVerifier;)V
    at com.amazonaws.http.conn.ssl.SdkTLSSocketFactory.<init>(SdkTLSSocketFactory.java:56)
    at com.amazonaws.http.apache.client.impl.ApacheConnectionManagerFactory.getPreferredSocketFactory(ApacheConnectionManagerFactory.java:87)
    at com.amazonaws.http.apache.client.impl.ApacheConnectionManagerFactory.create(ApacheConnectionManagerFactory.java:65)
    at com.amazonaws.http.apache.client.impl.ApacheConnectionManagerFactory.create(ApacheConnectionManagerFactory.java:58)
    at com.amazonaws.http.apache.client.impl.ApacheHttpClientFactory.create(ApacheHttpClientFactory.java:46)
    at com.amazonaws.http.apache.client.impl.ApacheHttpClientFactory.create(ApacheHttpClientFactory.java:37)
    at com.amazonaws.http.AmazonHttpClient.<init>(AmazonHttpClient.java:213)
    at com.amazonaws.AmazonWebServiceClient.<init>(AmazonWebServiceClient.java:145)
    at com.amazonaws.services.s3.AmazonS3Client.<init>(AmazonS3Client.java:393)
    at com.amazonaws.services.s3.AmazonS3Client.<init>(AmazonS3Client.java:373)
    at com.amazonaws.services.s3.AmazonS3Client.<init>(AmazonS3Client.java:355)
    at com.amazonaws.services.s3.AmazonS3Client.<init>(AmazonS3Client.java:327)
    at com.amazonaws.services.s3.AmazonS3Client.<init>(AmazonS3Client.java:309)
Run Code Online (Sandbox Code Playgroud)

感谢您的额外帮助, - 戴夫

httpclient nosuchmethoderror apache-httpclient-4.x aws-sdk

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

Kotlin:测试中的java.lang.NoSuchMethodError

是否可以在不同的源集中使用Kotlin包函数和包属性?当我试图这样做时,我已经NoSuchMethodError抛出了.


我有一个带有Kotlin代码的Gradle项目和两个源集,main以及test.在main,我在其中一个文件中有以下代码:

package ru.ifmo.ctddev.igushkin.dkvs
...
public val payloadSplitter: String = " ### "
Run Code Online (Sandbox Code Playgroud)

test我尝试使用payloadSplitter以下代码访问:

package ru.ifmo.ctddev.igushkin.dkvs
...
public class MessageTests {
    ...
    test fun testParsing() {
        ...
        checkParseAndToString("p1b 345 ${payloadSplitter} set a b c")
    }
    ...
}
Run Code Online (Sandbox Code Playgroud)

正好在payloadSplitter访问的第一行,在运行时我得到

java.lang.NoSuchMethodError: ru.ifmo.ctddev.igushkin.dkvs.DkvsPackage.getPayloadSplitter()Ljava/lang/String;
Run Code Online (Sandbox Code Playgroud)

其他全局变量和函数也无法test使用相同的错误.


UPD科特林队解释这个问题,并公布了修复这里.

nosuchmethoderror gradle kotlin source-sets

11
推荐指数
2
解决办法
3083
查看次数