java - 在 ArtifactoryClient.create 上为 JFrogDev/artifactory-client-java 抛出异常

标签 java plugins jenkins artifactory

我正在用 Java 开发 Jenkins 插件,当我尝试在 JFrog 的 artifactory 客户端 java 库中实例化 ArtifactoryClient 类时出现以下错误。

我使用了以下代码:

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

当它执行时,我得到下面的错误堆栈跟踪。我对这个问题做了广泛的研究,除了我也打开的这个问题中引用的那些之外,我还没有发现任何人有类似的错误: https://github.com/JFrogDev/artifactory-client-java/issues/85

我发现了一个类似的堆栈溢出问题,但他们的解决方案对我不起作用并且他们的堆栈跟踪不同,这意味着错误不同。 ( Upload to Artifactory using Java client )

我想知道是否有人知道如何解决这个错误以及它为什么会发生?

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)

我正在使用以下版本: 我使用的是最新版本的 artifactory-client-java。

Jenkins 1.621

Artifactory 2.3.0

我使用它的环境需要这些版本。

我试过这个插件的 Java 版本是 Java 1.8.02 和 Java 1.7.79

最佳答案

正如@drob 在上面的评论中所说,我使用了错误版本的 Jackson 库。 JFrog 的客户端库导入并需要 Jackson 2.4.6;但是,我已经在我之前导入的依赖项中导入了 Jackson 2.1.1。

我的构建工具(Maven)将其读取为冲突并使用 2.1.1 省略了 2.4.6,导致上述错误。

关于java - 在 ArtifactoryClient.create 上为 JFrogDev/artifactory-client-java 抛出异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38755612/

相关文章:

javascript - CakePHP Assets 压缩: Not generating compressed files in cache folders

plugins - Sublime Text 3 : "plugin host has exited unexpectedly"

jenkins - 如何在 jenkins 管道中使用 java 库?

python - 如何在 jenkins 控制台输出中获取 python 打印结果

java - 带有@SpringBootConfiguration 的 Spring Boot 多模块应用程序

java - 如何结合Recyclerview和Fragment?

java - 你能推荐一个好的 Java 反病毒组件来与 JavaEE Web 应用程序集成吗?

java - 在 Java 中运行多个线程

wordpress - 从插件添加自定义页面模板

Jenkins 不会在插件安装后启动 * 并且不记录任何内容 *