首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ND4J JUnit测试异常

ND4J JUnit测试异常
EN

Stack Overflow用户
提问于 2018-07-25 23:33:41
回答 1查看 77关注 0票数 1

我已经编写了一个简单的类,并在main()中手动测试它,并按预期工作:

代码语言:javascript
复制
import org.nd4j.linalg.api.ndarray.INDArray;
import org.nd4j.linalg.factory.Nd4j;

public class ND4J {
    public static void main(String[] args) {
        ND4J actualObject = new ND4J(Nd4j.zeros(2,2).add(4.0));
        INDArray testObject = Nd4j.create(new double[][]{{4.0,4.0}, {4.0,4.0}});
        if(testObject.equals(actualObject.getMatrix())){
            System.out.println("OK"); // prints “OK”
        }
    }
    private INDArray matrix;
    public ND4J (INDArray matrix){
        this.matrix = matrix;
    }
    public INDArray getMatrix(){
        return this.matrix;
    }
    public String toString(){
        return this.getMatrix().toString();
    }
}

但是尝试用JUnit 4对这个类进行单元测试是在抛出java.lang.AbstractMethodError:

代码语言:javascript
复制
import org.junit.Test;
import org.junit.runner.RunWith;
import org.nd4j.linalg.api.ndarray.INDArray;
import org.nd4j.linalg.factory.Nd4j;
import static org.junit.Assert.*;
public class ND4JTest {
    @Test
    public void print() {
        ND4J actualObject = new ND4J(Nd4j.zeros(2,2).add(4.0));
        //above statement throws this error
        //java.lang.AbstractMethodError: org.nd4j.linalg.factory.Nd4jBackend.getConfigurationResource()Lorg/springframework/core/io/Resource;
        INDArray testObject = Nd4j.create(new double[][]{{4.0,4.0}, {4.0,4.0}});
        assertEquals(testObject, actualObject.getMatrix());
    }
}

事实上,使用ND4J的更复杂的类在main()中运行良好,在测试中也遇到了类似的问题。我的pom文件有以下本机依赖项: javacpp,nd4j-jblas,ND4J -ND4J-platform,nd4j-native。

谢谢

EN

回答 1

Stack Overflow用户

发布于 2018-07-27 03:10:14

我没有使用ND4J get started页面上提到的前提条件,而是按照下面的说明让它正常工作:https://github.com/deeplearning4j/dl4j-examples/blob/master/standalone-sample-project/pom.xml

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51522773

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档