【问题标题】:OpenMPI: package mpi does not existOpenMPI:包 mpi 不存在
【发布时间】:2015-12-10 04:13:00
【问题描述】:

我使用 OpenMPI。我想从示例 here 中运行 Hello.java 和 Ring.java。 我用这一行编译 Hello.java:

javac Hello.java

然后我可以用 mpirun 运行它。

但是当我编译它时,我得到了这个错误:

Hello.java:25: error: package mpi does not exist
import mpi.*;
^
Hello.java:28: error: cannot find symbol
    static public void main(String[] args) throws MPIException {
                                                  ^
  symbol:   class MPIException
  location: class Hello
Hello.java:31: error: cannot find symbol
    MPI.Init(args);
    ^
  symbol:   variable MPI
  location: class Hello
Hello.java:33: error: package MPI does not exist
    int myrank = MPI.COMM_WORLD.getRank();
                    ^
Hello.java:34: error: package MPI does not exist
    int size = MPI.COMM_WORLD.getSize() ;
                  ^
Hello.java:37: error: cannot find symbol
    MPI.Finalize();
    ^
  symbol:   variable MPI
  location: class Hello
6 errors

谁能告诉我在哪里可以找到 MPI 包?或者我该如何解决这个问题?

PS:我用 mpicc 和 mpic++ 运行文件 hello_c.c 没有任何问题。

【问题讨论】:

    标签: java mpi javac openmpi


    【解决方案1】:

    你应该用 mpi 类路径编译“Hello.java”

    javac -cp "path to mpi.jar" Hello.java
    

    当我使用“MAC OS”时,“mpi.jar”位于以下路径:“/usr/local/lib/mpi.jar”

    所以我用这个命令编译:

    javac -cp "/usr/local/lib/mpi.jar" Hello.java
    

    你也可以使用“mpijavac”:

    mpijavac -cp "/usr/local/lib/mpi.jar" Hello.java
    

    然后您可以使用以下命令运行您的文件:

    mpirun java Hello
    

    如果您在库中找不到“mpi.jar”,可能是您没有安装带有 java 绑定的 open-mpi:

    ./configure --enable-mpi-java
    

    更多信息您可以访问open-mpi with java

    【讨论】:

      【解决方案2】:

      也许,您必须使用 java 库 (example) 安装 openMPI 和(或)将 mpi.jar 添加到项目中

      【讨论】:

      • 但我在目录中找不到 mpi.jar。我在哪里可以找到它?或者我该如何安装ist?
      猜你喜欢
      • 2012-02-04
      • 2019-07-08
      • 1970-01-01
      • 2011-05-25
      • 2019-12-24
      • 2011-10-04
      • 2022-08-19
      • 1970-01-01
      • 2012-02-01
      相关资源
      最近更新 更多