2

При работе над проектом машинописи (v2.0 +) в 'Visual Studio кодекса' (v1.5.3) Я получаю следующее сообщение об ошибке:tsserver: запрос обработки ошибок (Нет проект)

[Error - 10:03:50 AM] 'format' request failed with error. 
Error processing request. No Project. 
Error: No Project. 
... 

Я перезапуск визуально-студийный код с подробным протоколированием.

export TSS_LOG='-level verbose -file <my-home>/tss.log' 

Это дает немного больше информации:

Info 1233 request: {"seq":522,"type":"request","command":"format","arguments":{"file":"/<my_project>/src/ts/<the-file>.ts","line":1,"offset":1,"endLine":616,"endOffset":1}} 

Err 1234 Exception on executing command {"seq":522,"type":"request","command":"format","arguments":{"file":"/<my_project>/src/ts/<the-file>.ts","line":1,"offset":1,"endLine":616,"endOffset":1}}: 
No Project. 
Error: No Project. 
    at Errors (<my_global_node>/lib/node_modules/typescript/lib/tsserver.js:50793:32) 
    at ts.server.ts.server (<my_global_node>/lib/node_modules/typescript/lib/tsserver.js:50795:11) 
    at ts (<my_global_node>/lib/node_modules/typescript/lib/tsserver.js:51775:7) 
    at Object.<anonymous> (<my_global_node>/lib/node_modules/typescript/lib/tsserver.js:51776:3) 
    at Module._compile (module.js:413:34) 
    at Object.Module._extensions..js (module.js:422:10) 
    at Module.load (module.js:357:32) 
    at Function.Module._load (module.js:314:12) 
    at Module.require (module.js:367:17) 
    at require (internal/module.js:16:19) 

Info 1235 response:   
{"seq":0,"type":"response","command":"format","request_seq":522,"success":false,"message":"Error processing request. No Project. 
Error: No Project. 
    at Errors (/home/fred/.nvm/versions/node/v6.5.0/lib/node_modules/typescript/lib/tsserver.js:50793:32) 
    at ts.server.ts.server (/home/fred/.nvm/versions/node/v6.5.0/lib/node_modules/typescript/lib/tsserver.js:50795:11) 
    at ts (/home/fred/.nvm/versions/node/v6.5.0/lib/node_modules/typescript/lib/tsserver.js:51775:7) 
    at Object.<anonymous> (/home/fred/.nvm/versions/node/v6.5.0/lib/node_modules/typescript/lib/tsserver.js:51776:3) 
    at Module._compile (module.js:413:34) 
    at Object.Module._extensions..js (module.js:422:10) 
    at Module.load (module.js:357:32) 
    at Function.Module._load (module.js:314:12) 
    at Module.require (module.js:367:17) 
    at require (internal/module.js:16:19)"} 

Считает ли tsserver У меня нет проекта?

У меня есть файл «tsconfig.json» и «jsconfig.json» в корне каталога проекта. У меня есть «tasks.json», который запускает tsc. Я могу стимулировать tsserver другими запросами с аналогичным результатом.

ответ

5

Согласно tsserver.js source code

$ export TSS_LOG='-level verbose -file <my-home>/tss.log' 
$ code 

подробного файла журнала содержит ответ, но не сообщается как ошибка.

Info 2 Config file name: /<my-project>/src/ts/jsconfig.json 
Err 3  Exception on executing command {"seq":0,"type":"request","command":"open","arguments":{"file":"<my-project>/src/ts/<a-class-file>.ts","fileContent":"..."}}: Unexpected end of input 
<stack-trace> 

Проблема заключалась в том, что там был пустой файл «jsconfig.json» в верхней части «Src» дерево («SRC/ц/jsconfig.json»). Это привело к слишком большому поиску корня проекта в иерархии файлов. В частности, файл tsconfig.json не найден, что приводит к ошибке «Нет проекта».

Функция executeCommand() возвращена неопределенной, что происходит, когда связанный обработчик не может найти проект, содержащий файл. Файлы связаны с проектом через опции «файлы» или «включить» в «tsconfig.json». Файл 'tss.log' должен содержать сообщения «Информация» об открытых файлах. Убедитесь, что все файлы, о которых вы заботитесь, открыты, в частности, проверьте расположение файла «Config file name», чтобы убедиться, что вы получаете правильные файлы.

Эта проблема не была связана с «tsc», поскольку она не учитывает «jsconfig.json» как индикатор для проекта.

Типичный файл журнала должен выглядеть следующим образом:

Info 0 request: {"seq":0,"type":"request","command":"open","arguments":{"file":"/<my-project>/src/ts/folder1/ClassA.ts","fileContent":"..."}} 
Info 1 Search path: /<my-project>/src/ts/folder1 
Info 2 Config file name: /<my-project>/tsconfig.json 
Err 3  Add recursive watcher for: /<my-project> 
Err 4  Add recursive watcher for: /<my-project>/src/ts 
Info 5 Opened configuration file /<my-project>/tsconfig.json 
Info 6 Project (configured) 0 
/<node-root>/lib/node_modules/typescript/lib/lib.es6.d.ts 
/<my-project>/node_modules/@types/bluebird/index.d.ts 
...a list of all the project files... 

----------------------------------------------- 
Open file roots of inferred projects: 
Open files referenced by inferred or configured projects: 
Open file roots of configured projects: 
/<my-project>/src/ts/folder1/ClassA.ts 
Perf 7 Async elapsed time (in milliseconds): 1060.9415 
...