Это сообщение об ошибке исходит из файла dln_find.c
в Ruby, который выдает эту ошибку, когда пытается создать в системе путь, длина которого превышает значение MAXPATHLEN
.
В соответствии с этой ссылкой MSDN максимальная длина пути для ряда функций в Windows API составляет всего 248 символов - таким образом, я бы предположил, что MAXPATHLEN
определено как 248 в Ruby-forWindows-источники.(С другой стороны, источники dln_find.c
определяют его как 1024, если он не определен иначе.)
Существует несколько способов решить эту проблему в программе, если вы были программистом, ноРешение на уровне пользователя, вероятно, заключается в том, что вам нужно использовать каталог с более коротким именем.
(Итак, какой каталог должен быть короче? Ну, есть подсказка, что сообщение об ошибке говорит вам, какой файл он пытаетсядля загрузки, то есть chcp
и git
. Возможно, ваше обновление git изменило имя своего каталога на что-то слишком длинное, и вам нужно переместить его куда-нибудь с более коротким именем? Или ... похоже, этот код поиска может бытьперебирая каждую запись в вашей переменной окружения PATH
, проверяя ее и выдавая "слишком длинную" ошибку, если какая-либо конкретная возможность слишком длинная - возможно, ваш PATH
поврежден или имеет новую очень длинную запись?)