【问题标题】:Optaplanner and Quarkus solver config updateOptaplanner 和 Quarkus 求解器配置更新
【发布时间】:2020-07-28 15:15:48
【问题描述】:

我正在使用 quarkus 和 optaplanner 开展一个项目,我正在尝试访问和修改求解器的配置,以添加启发式方法、更改搜索算法等。

我正在使用solverJob 和solverManager,而quarkus 似乎对我隐藏了求解器的配置。我基本上遵循 Quarkus 教程 (https://quarkus.io/guides/optaplanner) 的步骤。

public PlannerSolution solve() {
    UUID problemId = UUID.randomUUID();
    SolverJob<PlannerSolution, UUID> solverJob;
    
    solverJob = solverManager.solve(problemId, problem);

    PlannerSolution solution;
    try {
      // Wait until the solving ends
      System.out.println("Waiting................");
      solution = solverJob.getFinalBestSolution();
      System.out.println("Done");
    } catch (InterruptedException | ExecutionException e) {
      throw new IllegalStateException("Solving failed.", e);
    }
    return solution;
  }

我也在使用 constraintProvider API。 有没有办法让我访问和修改 quarkus 自动制作的这个配置?我已经尝试过使用solverFactory 和xml conf 文件的基本方法,但quarkus 对此一点也不满意。

提前谢谢你!

【问题讨论】:

    标签: java optaplanner quarkus


    【解决方案1】:

    要更改默认求解器配置,请在项目的类路径中创建 XML 配置文件。 optaplanner-quarkus 扩展默认尝试读取solverConfig.xml。在项目中,它应该位于:

    .../src/main/resources/solverConfig.xml

    配置文件的默认位置可以被application.properties中的属性quarkus.optaplanner.solver-config-xml覆盖。

    【讨论】:

    • 好的,非常感谢,它有效,我现在可以玩真正的游戏了。我的 ressources 文件夹中没有solverConfig.xml,也没有任何地方,我必须自己创建它。我想直到现在 quarkus 甚至都不需要它来让它工作。
    猜你喜欢
    • 2021-08-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-08-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多