我正在尝试使用...启动graphhopper是一个 java 应用程序,我在终端上启动它的方式是转到其文件夹并输入以下命令:pm2graphhopper
java -jar matching-web/target/graphhopper-map-matching-web-1.0-SNAPSHOT.jar server config.yml
Run Code Online (Sandbox Code Playgroud)
该应用程序可以从命令行正常运行,但我还没有成功地将其作为服务运行pm2。我正在使用的配置文件是这个(pm2 start config.json):
{
"apps":[
{
"name":"graphhopper",
"cwd":".",
"script":"/usr/bin/java",
"args":[
"-jar",
"/home/myyser/graphhopper/map-matching/matching-web/target/graphhopper-map-matching-web-1.0-SNAPSHOT.jar",
"server",
"config.yml"
],
"log_date_format":"YYYY-MM-DD HH:mm Z",
"exec_interpreter":"",
"exec_mode":"fork"
}
]
}
Run Code Online (Sandbox Code Playgroud)
我 100% 确定我在这里出错的是我编写参数的方式"server", "config.yml"...查看一下pm2 logs graphhopper我可以看到这些参数根本没有被识别...我尝试调整也是这样做的,但我没有找到正确的解决方案。我知道如何pm2不带参数启动java应用程序。但是我该如何使用具有参数的 java 应用程序来做到这一点呢graphhopper?
Raf*_*rsk 14
正如评论中所述,这个问题可以通过创建一个bash脚本并运行它来解决,pm2而不是直接运行java应用程序...使用的bash脚本是graphhopper.sh如下文件:
#!/bin/bash
java -jar matching-web/target/graphhopper-map-matching-web-1.0-SNAPSHOT.jar server config.yml
Run Code Online (Sandbox Code Playgroud)
并将其作为服务启动pm2:
pm2 start graphhopper.sh --name=graphhopper
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
16212 次 |
| 最近记录: |