繁体   English   中英

Cplex Java 库在Eclipse 中设置路径问题

[英]Cplex Java Library set up path problem in Eclipse

我在 Eclipse 中使用 Cplex 库时遇到了一个新手问题,

错误:无法找到或加载主类 Files\\IBM\\ILOG\\CPLEX_Studio1210\\cplex\\bin\\x64_win64 导致:java.lang.ClassNotFoundException: Files\\IBM\\ILOG\\CPLEX_Studio1210\\cplex\\bin\\x64_win64

我从外部库添加了 cplex.jar 并通过编辑添加了本机路径,Eclipse 中的 CPLEX 库路径错误

在我添加的 VMArguments 下,-Djava.library.path=C:\\Program Files\\IBM\\ILOG\\CPLEX_Studio1210\\cplex\\bin\\x64_win64

cplex12100.dll 所在的位置。 我以前设法使用它,但我找不到为什么它现在不起作用。

一切都是64位。

提前致谢!

您的错误消息引用了以下路径:

Files\\IBM\\ILOG\\CPLEX_Studio1210\\cplex\\bin\\x64_win64

请注意,它不是以“C:Program Files”开头。 我的猜测是您需要在您提供的路径周围加上引号,如下所示:

-Djava.library.path="C:\Program Files\IBM\ILOG\CPLEX_Studio1210\cplex\bin\x64_win64"

这应该允许 Java 处理包含空格字符的路径。

感谢您的回答,不幸的是,我忘了补充说我已经尝试过了,但是当我尝试这样做时它又出现了另一个错误。

错误:无法初始化主类模型(我的包名)。模型(我的类名)引起:java.lang.NoClassDefFoundError:ilog/concert/IloException

这是我的代码的一部分,我削减了它的一半(之后...),因为我想它与问题无关。

package model;
import ilog.concert.*;
import ilog.cplex.*;
import java.io.File;
import java.io.FileNotFoundException;
import java.util.Scanner;
import java.util.*;
import java.time.Instant;
import java.util.concurrent.TimeUnit;
public class model {




public static void main(String[] args) throws Exception {


     long startTime = Instant.now().toEpochMilli();

     int a = 45; //matrisin boyutu
     int b = 45; //matrisin 2. boyutu
     int maxdistance = 90; //mesela 90 dan küçük deðerler
     int depot = 0;
     double alfa = 0.9;
     double beta = 0.1;
     float[][] distance = new float[a][b]; // bunu scanner dan çektik

     int m = 3;
     int C = 1200;

     System.out.println();
     System.out.println("m : " + m + "      C : " + C );
     System.out.println();

     ArrayList<ArrayList> Nlist = new ArrayList<ArrayList>();

     Scanner reader = null;
     File burdurData = new File("burdur45.txt");

    ...


    try {

        long timeElapsed = endTime - startTime;

        System.out.println("Execution time in milliseconds: " + timeElapsed);
        System.out.println("Execution time in seconds: " + timeElapsed/1000);



        } // try'ýn parantezi

    catch (IloException exc) {
        System.out.println(exc);
        System.out.println("sýkýntý");
    }



   }

}

你当然应该编辑你的问题。 事实上,为了得到错误:

java.lang.NoClassDefFoundError: ilog/concert/IloException

我收到了这个错误,我解决它只是在不ModulePath进行我的项目Java构建路径的Classpath部分进口cplex.jar。 也将 Native Library Location 路径设置为 cplex 的 dlls 文件夹。 此外,您也可以在java configuration->show command line 中检查您的详细信息。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM