首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >线程"main“java.lang.RuntimeException中的EMJL异常:不可编译代码-找不到符号

线程"main“java.lang.RuntimeException中的EMJL异常:不可编译代码-找不到符号
EN

Stack Overflow用户
提问于 2022-04-22 20:58:19
回答 1查看 79关注 0票数 0

我试图让EJML工作,特别是创建带有随机数的矩阵。创建一个常规的SimpleMatrix和DMatrixRMaj很好。但是我一直得到java.lang.RuntimeException:无法编译的代码-在使用更高级的语句(如

代码语言:javascript
运行
复制
DMatrixRMaj D2 = new RandomMatrices_DDRM.createSymmetric(20,-2,3,rand);

代码语言:javascript
运行
复制
SimpleMatrix S2 = new SimpleMatrix.random64(20,20,-2,3,rand);

下面是完整的代码和错误消息。

谢谢!

/Benny

代码语言:javascript
运行
复制
package com.benny.evosim;

import java.util.*;

import org.ejml.simple.SimpleMatrix;

import org.ejml.data.DMatrixRMaj;

import org.ejml.dense.row.RandomMatrices_DDRM;

public class EvoSim {

public static void main(String[] args) {

    EvoSim evoSimInstance = new EvoSim();
    evoSimInstance.start();
}

public void start() {
    
    Random rand = new Random();
    SimpleMatrix A = new SimpleMatrix(3,3);
    DMatrixRMaj​ D  = new DMatrixRMaj(3,3) ; 
    
    DMatrixRMaj D2 = new RandomMatrices_DDRM.createSymmetric(20,-2,3,rand);
    SimpleMatrix S2 = new SimpleMatrix.random64(20,20,-2,3,rand);
    
    A.print();
    }
}

错误信息

代码语言:javascript
运行
复制
--------------------------< com.benny:evosim >--------------------------
Building evosim 1.0-SNAPSHOT
--------------------------------[ jar ]---------------------------------

--- exec-maven-plugin:3.0.0:exec (default-cli) @ evosim ---
Exception in thread "main" java.lang.RuntimeException: Uncompilable code - cannot find symbol
  symbol:   variable RandomMatrices_DDRM
  location: class com.benny.evosim.EvoSim
    at com.benny.evosim.EvoSim.start(EvoSim.java:1)
    at com.benny.evosim.EvoSim.main(EvoSim.java:26)
Command execution failed.
org.apache.commons.exec.ExecuteException: Process exited with an error: 1 (Exit value: 1)
    at org.apache.commons.exec.DefaultExecutor.executeInternal (DefaultExecutor.java:404)
    at org.apache.commons.exec.DefaultExecutor.execute (DefaultExecutor.java:166)
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-04-22 21:01:47

在方法之前创建RandomMatrices_DDRM的实例。在这种情况下,方法实际上是symmetric

代码语言:javascript
运行
复制
DMatrixRMaj d2 = new RandomMatrices_DDRM().symmetric(20,-2,3,rand);

SimpleMatrix也是如此

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

https://stackoverflow.com/questions/71974563

复制
相关文章

相似问题

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