我开始遇到这个奇怪的错误;完全不确定是什么原因造成的——也许是 Maven 重建。我无法解释这种行为......有时它可以在 IntelliJ 中工作,有时不能,当我从 jar 文件运行它时它会失败。
这是运行时错误:
java.lang.NoSuchMethodError: breeze.linalg.DenseVector$.canScaleD()Lbreeze/linalg/operators/BinaryOp
它出现在这段代码中:
import breeze.linalg._
import breeze.linalg.DenseVector._
var planeNormal = DenseVector.zeros[Double](39)
weights.zip(vectors).foreach case(w: Double, vector: DenseVector[Double]) =>
planeNormal :+= (vector :* w)
}
在vector :* w
函数调用中。
有人对可能出了什么问题有任何想法吗?
我怀疑它的版本不匹配,但不知道在哪里修复它;我正在使用这个微风数学包
<groupId>org.scalanlp</groupId>
<artifactId>breeze-math_2.10</artifactId>
<version>0.4</version>
和斯卡拉
<groupId>org.scala-lang</groupId>
<artifactId>scala-library</artifactId>
<version>2.10.3</version>