@Nullable
    private static JobID getJobId(CommandLine commandLine) throws FlinkParseException {
        String jobId = commandLine.getOptionValue(JOB_ID_OPTION.getOpt());
        if (jobId == null) {
            return null;
        }
        try {
            return JobID.fromHexString(jobId);
        } catch (IllegalArgumentException e) {
            throw createFlinkParseException(JOB_ID_OPTION, e);
        }
    }
@Test
    void testShortOptions() throws FlinkParseException {
        final String jobClassName = JOB_CLASS_NAME;
        final JobID jobId = new JobID();
        final String savepointRestorePath = "s3://foo/bar";
        final String jars = String.join(",", JOB_JARS);
        final String[] args = {
            "-c",
            confDirPath,
            "-j",
            jobClassName,
            "-jid",
            jobId.toString(),
            "-s",
            savepointRestorePath,
            "-jars",
            jars,
            "-n"
        };

        final StandaloneApplicationClusterConfiguration clusterConfiguration =
                commandLineParser.parse(args);

        assertThat(clusterConfiguration.getConfigDir()).isEqualTo(confDirPath);
        assertThat(clusterConfiguration.getJobClassName()).isEqualTo(jobClassName);
        assertThat(clusterConfiguration.getJobId()).isEqualTo(jobId);
        assertThat(clusterConfiguration.getJars()).isEqualTo(JOB_JARS);

        final SavepointRestoreSettings savepointRestoreSettings =
                clusterConfiguration.getSavepointRestoreSettings();
        assertThat(savepointRestoreSettings.restoreSavepoint()).isTrue();
        assertThat(savepointRestoreSettings.getRestorePath()).isEqualTo(savepointRestorePath);
        assertThat(savepointRestoreSettings.allowNonRestoredState()).isTrue();
    }