Изменить кодировку cmd при старте jar

Делаю консольное приложение, которое получает на вход стороку и фильит, а затем выводит по заданному фильтру соответствующие слова. При двойном клике на jar открывается консоль, и выполняется приложение. Проблема в том что при выводе результата в кириллице получаеются кракозябры. Вот пример работы приложения. Помогите исправить: Вот пример:

 public class Grep  {
    private String inputString;
    private String filter;
public Grep(String inputString, String filter) {
        this.inputString = inputString;
        this.filter = filter;
    }

    public String getInputString() {
        return inputString;
    }

    public void setInputString(String inputString) {
        this.inputString = inputString;
    }

    public String getFilter() {
        return filter;
    }

    public void setFilter(String filter) {
        this.filter = filter;
    }


    public void grep() {
        if(getInputString().isEmpty() || getFilter().isEmpty()) {
            System.out.println("Введите данные!");
        } else {
            Stream<String> stringStream = Stream.of(getInputString().split("[\\p{Punct}\\s]+"));
            String result = stringStream.filter(s -> s.contains(getFilter()))
                    .map(String::toLowerCase)
                    .collect(Collectors.joining(", "));
            if(result.isEmpty()) {
                System.out.println("Совпадений не найдено!");
            } else System.out.println(result);
           
        }

    } }

    public class Main {

    public static void main(String[] args) throws IOException, InterruptedException {

        final String STOP = "stop";
        if (args.length == 0) {
            Process p = Runtime.getRuntime().exec("cmd.exe /c start java -jar " + 
                    (new File(Main.class.getProtectionDomain().getCodeSource().getLocation().getPath())).getAbsolutePath() + " cmd");

        } else {

            while (true) {
                Scanner scanner = new Scanner(System.in);
                System.out.println("Введите слова: ");
                var inputString = scanner.nextLine();
                System.out.println("Введите фильтр: ");
                var filter = scanner.nextLine().toLowerCase();
                Grep grep = new Grep(inputString, filter);
                System.out.print("Результат применения фильтра: ");
                grep.grep();
                System.out.println("Если хотите продолжить нажмите любую клавишу. Введите \"stop\" для выхода.");
                if(scanner.nextLine().equalsIgnoreCase("stop")){
                    scanner.close();
                    System.out.println("Good Bye!");
                    Thread.sleep(2000);
                    System.exit(0);
                }

            }


        }

    }
}

Ответы (1 шт):

Автор решения: Иван Ассаулов

Проблема решилась добавление строки -Dfile.encoding=cp866 в параметры запуска консоли.

→ Ссылка