使用JPMML库(使用番石榴)时出现了一个奇怪的运行时错误。
我在我的pom.xml中使用了jpmml相关的依赖项,如下所示
<dependency>
<groupId>org.jpmml</groupId>
<artifactId>pmml-evaluator</artifactId>
<version>1.3.6</version>
</exclusions>
</dependency>它开始抛出异常。然后我试着像下面这样。
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>19.0</version>
</dependency>
<dependency>
<groupId>org.jpmml</groupId>
<artifactId>pmml-evaluator</artifactId>
<version>1.3.6</version>
<exclusions>
<exclusion>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
</exclusion>
</exclusions>
</dependency>我尝试了11.x/12.x/15.x/18.x/19.x/20.x版本的番石榴,但我仍然面临同样的例外。我已经通过谷歌,人们已经使用了番石榴-19.0版本,它为他们工作,但我不能做到这一点。有人能告诉我我错过了什么吗。
请在下面找到完整的堆栈跟踪。
java.lang.NoSuchMethodError: com.google.common.cache.CacheBuilder.from(Lcom/google/common/cache/CacheBuilderSpec;)Lcom/google/common/cache/CacheBuilder;
at org.jpmml.evaluator.CacheUtil.newCacheBuilder(CacheUtil.java:97)
at org.jpmml.evaluator.CacheUtil.buildLoadingCache(CacheUtil.java:90)
at org.jpmml.evaluator.ModelEvaluator.<clinit>(ModelEvaluator.java:660)
at org.jpmml.evaluator.ModelEvaluatorFactory.newModelEvaluator(ModelEvaluatorFactory.java:80)
at org.jpmml.evaluator.ModelEvaluatorFactory.newModelEvaluator(ModelEvaluatorFactory.java:66)
.....
.....发布于 2017-07-05 06:31:48
看起来您在maven pom中有正确的版本,但是在运行时它正在选择旧版本,请确保它在运行时选择正确的版本。检查数据节点上的类路径。
https://stackoverflow.com/questions/44918042
复制相似问题