如何停止已组装的Scalatra应用程序?

如何停止已组装的Scalatra应用程序?,scala,scalatra,Scala,Scalatra,我有一个通过sbt组装的应用程序,它是这样启动的: java -jar target/scala-2.10/evcat-assembly-0.0.1.jar 我可以通过按Ctrl-C来停止进程,但我不知道这是否会启动正常的关闭进程。我很好奇,因为在我的destroy()方法中,我调用了一些日志记录例程(除了DB shutdown等),但在我按下键盘后什么都没有显示 那么,有没有一种安全关闭我的应用程序的标准方法呢?我也有同样的问题,我想你需要使用“&”,这样作业就可以在后台运行了。除此之外,您

我有一个通过sbt组装的应用程序,它是这样启动的:

java -jar target/scala-2.10/evcat-assembly-0.0.1.jar
我可以通过按Ctrl-C来停止进程,但我不知道这是否会启动正常的关闭进程。我很好奇,因为在我的
destroy()
方法中,我调用了一些日志记录例程(除了DB shutdown等),但在我按下键盘后什么都没有显示


那么,有没有一种安全关闭我的应用程序的标准方法呢?

我也有同样的问题,我想你需要使用“&”,这样作业就可以在后台运行了。除此之外,您还需要将进程(pid)写入文件中,以便可以终止它。我们使用的是shell脚本和一些类似的代码

 java -jar "$JAR_FILE" $OPTIONS >> "$LOG_FILE" 2>&1 & echo $! > "$PID"

我绝对可以扼杀这个过程。我担心的是如何做到这一点,既不会损害数据,也不会干扰应用程序的生命周期(特别是关机)