第 8 章 手动配置和运行 OptaWeb Vehicle Routing
运行 OptaWeb Vehicle Routing 的最简单方法是使用 runlocally.sh
脚本。但是,如果系统上没有 Bash,您可以手动完成 runlocally.sh
脚本执行的步骤。
先决条件
- optaweb Vehicle Routing 已成功使用 Maven 构建,如 第 6 章 下载并构建 OptaWeb Vehicle Routing 部署文件 所述。
- 可通过互联网访问。
流程
下载路由数据。
路由引擎需要地理数据来计算在位置间传输所需时间。在运行 OptaWeb Vehicle Routing 前,您必须将 OpenStreetMap (OSM)数据文件下载到本地文件系统中。
注意OSM 数据文件通常介于 100 MB 到 1 GB 之间,需要时间来下载文件,以便在构建或启动 OptaWeb Vehicle Routing 应用程序前下载文件。
-
在网页浏览器中打开
http://download.geofabrik.de/
。 - 单击 Sub Region 列表中的区域,如 Europe。此时会打开 subregion 页面。
-
在 Sub Regions 表中,下载国家的 OSM 文件(
.osm.pbf
),如 Belgium。
-
在网页浏览器中打开
创建数据结构。
optaweb Vehicle Routing 读取和写入文件系统中多种数据。它从
openstreetmap
目录中读取 OSM (OpenStreetMap)文件,将 road 网络图写入图形
跃点目录,并在名为db
的目录中保留用户数据。创建一个用于存储所有数据的新目录,以便更轻松地升级到 OptaWeb Vehicle Routing 的较新版本,并继续使用之前创建的数据。-
创建
$HOME/{VRP-DATA-DIR}
目录。 在
$HOME/{VRP-DATA-DIR}
目录中创建openstreetmap
目录:$HOME/{VRP-DATA-DIR} └── openstreetmap
将所有下载的 OSM 文件(扩展为
.osm.pbf
的文件)移到openstreetmap
目录中。目录结构的其余部分由 OptaWeb Vehicle Routing 应用程序首次运行时创建。之后,您的目录结构类似以下示例:
$HOME/{VRP-DATA-DIR} ├── db │ └── vrp.mv.db ├── graphhopper │ └── belgium-latest └── openstreetmap └── belgium-latest.osm.pbf
-
创建
-
将目录更改为
optaweb-vehicle-routing-distribution-7.48.0.Final-redhat-00004/sources/optaweb-vehicle-routing-standalone/target
。 要运行 OptaWeb Vehicle Routing,请输入以下命令:
java -jar optaweb-vehicle-routing-standalone-7.48.0.Final-redhat-00004.jar \ --app.persistence.h2-dir=$HOME/{VRP-DATA-DIR}/db \ --app.routing.gh-dir=$HOME/{VRP-DATA-DIR}/graphhopper \ --app.routing.osm-dir=$HOME/{VRP-DATA-DIR}/openstreetmap \ --app.routing.osm-file=<OSM_FILE_NAME> \ --app.region.country-codes=<COUNTRY_CODE_LIST> \
在这个命令中,替换以下变量:
-
<OSM_FILE_NAME
> :您要使用的区域的 OSM 文件以及之前下载的区域 <COUNTRY_CODE_LIST
> :用于过滤 geosearch 查询的国家代码的逗号分隔列表。有关国家代码列表,请参阅 ISO 3166 国家代码。应用程序在下载 OSM 文件后启动。
在以下示例中,OptaWeb Vehicle Routing 下载 Central 美国的 OSM 映射(
central-america-latest.osm.pbf
),并在国家 Belize (BZ)和 Guatemala (GT)中搜索。java -jar optaweb-vehicle-routing-standalone-7.48.0.Final-redhat-00004.jar \ --app.persistence.h2-dir=/home/user/.optaweb-vehicle-routing/db \ --app.routing.osm-dir=/home/user/.optaweb-vehicle-routing/openstreetmap \ --app.routing.gh-dir=/home/user/.optaweb-vehicle-routing/graphhopper \ --app.routing.osm-file=central-america-latest.osm.pbf \ --app.region.country-codes=BZ,GT
-
要打开 OptaWeb Vehicle Routing 用户界面,请在网页浏览器中输入以下 URL:
http://localhost:8080