我有一个通过sbt组装的应用程序,并按照以下方式启动:
java -jar target/scala-2.10/evcat-assembly-0.0.1.jar
我可以通过点击 Ctrl-C 来停止这个过程,但我不知道是否会启动正常的关机过程。我想知道,因为在我的destroy()
方法中,我调用了(除了数据库关闭等)一些日志记录例程,但在我敲击键盘后没有显示。
那么,有没有一种安全关闭我的应用程序的标准方法?
答案 0 :(得分:0)
我有同样的问题,我认为您需要使用“&”,因此作业将在后台运行。除此之外,您需要将进程(pid)写入文件,以便将其杀死。我们使用的是shell脚本和一些像这样的代码。
java -jar "$JAR_FILE" $OPTIONS >> "$LOG_FILE" 2>&1 & echo $! > "$PID"