[SPARK-3658][SQL]Take thrift server as a daemon

https://issues.apache.org/jira/browse/SPARK-3658

And keep the `CLASS_NOT_FOUND_EXIT_STATUS` and exit message in `SparkSubmit.scala`.
I don't think `SUBMISSION_OPTS` and `APPLICATION_OPTS` are properly defined here. Function `gatherSparkSubmitOpts` should be called here to define these two variables. You may refer to `sbin/start-thriftserver.sh` for details.