2016-08-04 32 views
3

Ich entwickle ein Jenkins-Plugin in Java, und ich bekomme den folgenden Fehler, wenn ich versuche, die ArtifactoryClient-Klasse in JFrogs Artefakt-Client-Java-Bibliothek zu instanziieren.auf ArtifactoryClient.create Ausnahmebedingung für JFrogDev/artefactory-client-java

habe ich den folgenden Code:

ArtifactoryClient artifactory = ArtifactoryClient.create(resolverServerUrl, resolverUsername, resolverPassword); 

Und ich bekomme den Fehler-Stack-Trace, wenn sie ausgeführt wird. Ich habe umfangreiche Forschung zu diesem Thema getan, und ich habe niemanden mit einem ähnlichen Fehler außer denen in dieser Frage, die ich auch geöffnet verwiesen gefunden: https://github.com/JFrogDev/artifactory-client-java/issues/85

Ich fand eine ähnliche Stapelüberlauf Frage, aber ihre Lösung funktioniert nicht für mich und ihre Stack-Trace ist anders, was bedeutet, dass der Fehler anders ist.

Ich frage mich, ob jemand weiß, wie man diesen Fehler beheben kann und warum es passiert?

groovy.lang.MissingMethodException: No signature of method: 
com.fasterxml.jackson.databind.ObjectMapper.addMixIn() is applicable for argument types: (java.lang.Class, java.lang.Class) values: [interface 
org.jfrog.artifactory.client.model.Repository, ...] at 
org.codehaus.groovy.runtime.ScriptBytecodeAdapter.unwrap(ScriptBytecodeAdapter.java:55) at 
org.codehaus.groovy.runtime.callsite.PojoMetaClassSite.call(PojoMetaClassSite.java:46) at 
org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:120) at org.jfrog.artifactory.client.impl.ArtifactoryImpl.<init>(ArtifactoryImpl.groovy:46) 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.codehaus.groovy.reflection.CachedConstructor.invoke(CachedConstructor.java:77) at 
org.codehaus.groovy.runtime.callsite.ConstructorSite$ConstructorSiteNoUnwrapNoCoerce.callConstructor(ConstructorSite.java:102) at 
org.codehaus.groovy.runtime.callsite.AbstractCallSite.callConstructor(AbstractCllSite.java:194) at 
org.jfrog.artifactory.client.ArtifactoryClient.create(ArtifactoryClient.groovy: 
7) at 
org.jfrog.artifactory.client.ArtifactoryClient.create(ArtifactoryClient.groovy) 
at com.jenkins.plugins.servicenow.artifactory.ArtifactoryService.<init 
(ArtifactoryService.java:36) at 
com.ge.integration.jenkins.notification.Phase.initialize(Phase.java:152) at 
com.ge.integration.jenkins.notification.Phase.perform(Phase.java:210) at 
com.ge.integration.jenkins.notification.Phase.handle(Phase.java:114) at 
com.ge.integration.jenkins.notification.JobListener.onFinalized(JobListener.jav 
:52) at hudson.model.listeners.RunListener.fireFinalized(RunListener.java:230) 
at hudson.model.Run.onEndBuilding(Run.java:1890) at 
hudson.model.Run.execute(Run.java:1809) at 
hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43) at 
hudson.model.ResourceController.execute(ResourceController.java:98) at 
hudson.model.Executor.run(Executor.java:381) 

Ich verwende die folgenden Versionen: ich die neueste Version von artifactory-client-java bin mit.

Jenkins 1,621

Artifactory 2.3.0

Die Umgebung, die ich dies für verwende erfordert diese Versionen.

Die Java-Versionen ich dieses Plugin versucht haben, auf sind Java 1.8.02 und Java 1.7.79

+0

Können Sie genauer auf die Frage eingehen? –

+0

@vipincp hat die Frage aktualisiert. Bitte lassen Sie mich wissen, wenn Sie einen Blick darauf werfen könnten. Ich füge weitere Informationen hinzu, die Ihrer Meinung nach fehlen. –

+1

Sieht aus, als hätte Ihr Projekt eine falsche Version der Jackson-Bibliothek (sollte 2.4.6 sein) –

Antwort

1

Wie @drob oben in den Kommentaren gesagt, ich habe die falsche Version der Jackson-Bibliothek. JFrogs Client-Bibliothek importiert und benötigt Jackson 2.4.6; Allerdings hatte ich Jackson 2.1.1 in eine Abhängigkeit importiert, die ich vorher importiert hatte.

Mein Build-Tool (Maven) lesen Sie es als Konflikt und verwendet 2.1.1 2.4.6 Weglassen, was den oben beschriebenen Fehler.