tsconfig.json: Build: в конфігураційному файлі не знайдено входів


136

У мене є основний проект ASP.NET, і я отримую цю помилку, коли намагаюся створити її:

error TS18003: Build:No inputs were found in config file 'Z:/Projects/client/ZV/src/ZV/Scripts/tsconfig.json'. Specified 'include' paths were '["**/*"]' and 'exclude' paths were '["../wwwroot/app","node_modules/*"]'.
1>         The command exited with code 1.
1>       Done executing task "VsTsc" -- FAILED.

Це мій tsconfig.jsonфайл:

{
  "compileOnSave": true,
  "compilerOptions": {
    "emitDecoratorMetadata": true,
    "experimentalDecorators": true,
    "lib": [ "es5", "dom" ],
    "module": "commonjs",
    "moduleResolution": "node",
    "noEmitOnError": true,
    "noImplicitAny": false,
    "outDir": "../wwwroot/app/",
    "removeComments": false,
    "sourceMap": true,
    "target": "es6"
  },
  "exclude": [
    "../wwwroot/app",
    "node_modules/*"
  ]
}

Це помилка чи я щось роблю не так? Я нещодавно оновив Visual Studio 2015 до оновлення 3. Хто-небудь стикався з цим раніше?


5
Це цілеспрямована поведінка. Потрібно щось скласти.
— Алуан Хаддад

1
@AluanHaddad Ви констатуєте це так, ніби це факт. Чи можете ви надати підтвердження свого твердження.
— Serj Sagan


Ваше джерело має бути там, де ви вказуєте "включити" на tsconfig
— Мохаммад Кермані

Відповіді:


245

Додайте порожній файл машинопису в папку сценаріїв сценаріїв (місце розташування вашого файлу tsconfig), щоб задовольнити компілятор.


59
що це означає?
— Крістіан Матвій

21
@Christian Matthew Це означає, що вам потрібно додати принаймні один файл машинопису до папки, у якій ваш додаток задовольняє компілятор.
— rood

12
Що ви маєте на увазі під папкою сценарію. Чи можете ви, будь ласка, детальніше розробити ??
— Сан-Джайсі

1
Як не дивно .. я давно використовував цю відповідь (додав tsconfig і це виправив це питання). Коли я додав Vue до проекту, проблема з’явилася знову ... тому мені довелося потім видалити tsconfig, який я додав у минулому, і він спрацював: P
— joshmcode

1
Дякую. Працює для мене. Але чи може хтось пояснити, що насправді відбувається позаду?
— DriLLFreAK100

60

Ви також можете спробувати перезапустити редактор коду. Це теж добре працює.


Нічого собі, це працювало для мене!
— JavaRunner

20

Я взагалі не використовую TypeScript у цьому проекті, тому зіткнутися з цим досить неприємно. Я вирішив це, додавши tsconfig.json та порожній файл file.ts до кореня проекту. Tsconfig.json містить це:

{
  "compilerOptions": {

    "allowJs": false,
    "noEmit": true // Do not compile the JS (or TS) files in this project on build

  },
  "compileOnSave": false,
  "exclude": [ "src", "wwwroot" ],
  "include": [ "file.ts" ]
}

Дякую, цей працював на мене. Тож проблема лише з оновленням редактора коду проти коду не з React
— Санджай Поунгуран

17

Якщо у вас є includeмасив (на який, швидше за все, скаржаться вкладиш TypeScript):

tsconfig.json

{
  ...
  "include": [
    "./src/"
  ],
}

і ви використовуєте VSCode, ви можете легко перезапустити TS-сервер у своєму редакторі дуже легко, щоб запропонувати йому повторно оцінити файл.

CMD+ SHIFT+ P(на Mac) відкриє командний рядок і знайде TypeScript: Restart TS serverкоманду

введіть тут опис зображення


Як отримати команду TypeScript ? У мене є, наприклад, Файл , Git , GitLens тощо
— Лев,

1
@Не переконайтеся, що ви переглядаєте .js/ .jsx/ .ts/ .tsxфайл, шукаючи команду. Наприклад, ця команда недоступна під час перегляду .htmlфайлу
— FrostyDog

10

Якщо ви використовуєте код для редагування, то спробуйте перезапустити редактор. Цей сценарій вирішив мою проблему. Я думаю, що це проблема з кешем редактора.


8

Коли ви створюєте tsconfig.jsonфайл за допомогою tsc --init, він коментує каталог вхідних та вихідних файлів. Отже, це першопричина помилки.

Щоб вирішити проблему, коментуйте ці два рядки:

"outDir": "./", 
"rootDir": "./", 

Спочатку це виглядатиме як вище після відміни коментарів.

Але всі мої сценарії .ts були у папці src. Так я вказав / src.

"outDir": "./scripts", 
"rootDir": "./src", 

Зверніть увагу, що вам потрібно вказати розташування ваших .ts скриптів у rootDir.


5

Я отримую цю помилку: "У конфігураційному файлі" tsconfig.json "не знайдено жодних входів. Вказані" включати "шляхи були, '["**/*"]'а шляхи " виключити "були '["**/*.spec.ts","app_/**/*.ts","**/*.d.ts","node_modules"]'.

У мене є файл .tsconfig, який читає файли ts з папки "./src".

Проблема тут полягає в тій папці-джерелі, яка не містить .ts-файлів, і у мене працює tslint. Я вирішив проблему, видаливши завдання tslint з мого файлу gulp. Оскільки у мене немає жодних файлів .ts, які слід компілювати та зв’язувати. Мою проблему вирішують таким чином.


4

Додайте .ts розташування файлу в тег "включити", потім компілюйте роботу. колишній

"include": [
"wwwroot/**/*" ]

3

Під час використання коду Visual Studio , будуючи проект (тобто натискаючи Ctrl + Shift + B ), переміщає ваш .ts файл у папку .vscode (я не знаю, чому це робиться), а потім генерує помилку TS18003 . Що я зробив, це перемістити свій .ts файл із папки .vscode , повернутись у кореневу папку та створити проект заново.

Проект побудований успішно!


він поміщає .tsconfig файл у папку .vscode. Якщо ви перемістите його з папки .vscode, вам також може знадобитися відредагувати .vscode / task.json, щоб вказати на нове місце розташування
— розбірливий

3

У корінь я додав наступне (візуальна студія)

{
  "compilerOptions": {
    "allowJs": true,
    "noEmit": true,
    "module": "system",
    "noImplicitAny": true,
    "removeComments": true,
    "preserveConstEnums": true,
    "sourceMap": true
  },
  "include": [
    "**/*"
  ],
  "exclude": [
    "assets",
    "node_modules",
    "bower_components",
    "jspm_packages"
  ],
  "typeAcquisition": {
    "enable": true
  }
}

1
Просто порожній "exclude": [ "" ]теж працює (щоб замінити дефолт, який є ./)
— шпигуни

3

У мене всі мої файли .ts у srcпапці, яка є моїм братом tsconfig.json. Я отримував цю помилку, коли мій includeвиглядав так (він працював раніше, деяке оновлення залежності викликало появу помилки):

"include": [
    "src/**/*"
],

змінивши його на цю проблему, виправили для мене проблему:

"include": [
    "**/*"
],


1

Btw, просто була та сама проблема.

Якщо у вас був мій випадок, то, ймовірно, tsconfig.json не в тому ж каталозі, що і файл .ts.

(У моєму випадку я тупо мав поруч з start.json і task.json всередині папки .vscode: P)


так точно навпаки порівняно з відповіддю @Noximus: D
— Tha Brad

1

У мене в рішенні були файли tsconfig для 4 існуючих проектів. Після переходу на vs2017 у мене виникла ця проблема. Це було виправлено шляхом додавання (нібито за замовчуванням) розділів у файли та виключення, як описано NicoJuicy.


1
"outDir"

Слід відрізнятися від

"rootDir"

приклад

    "outDir": "./dist",
    "rootDir": "./src", 

0

Якщо ви не хочете компіляції TypeScript, відключіть її у вашому .csprojфайлі відповідно до цього допису .

Просто додайте у .csprojфайл наступний рядок :

<TypeScriptCompileBlocked>true</TypeScriptCompileBlocked>

0

У мене є tsconfig.jsonфайл, який не стосується жодних файлів .ts. Це в окремій папці. Натомість я використовую його лише як основу для інших файлів tsconfig через "extends": "../Configs/tsconfig.json". Щойно я перейменував базовий конфігураційний файл на щось інше, наприклад base-tsconfig.json(і оновив extendsзаяви), помилка пішла і розширення все ще працювало.


0

Я отримав таку ж помилку, і в моєму випадку це було тому, що vscode не міг розпізнати .tsфайл.

Він бачив це як текстовий файл, і мені довелося перейменувати його, щоб видалити одну букву та додати її назад, щоб вона працювала.


0

Я постійно стикався з цим питанням, упакуючи свої проекти в ноти через Visual Studio 2019. Після пошуку рішення на віки я, здається, вирішив це, дотримуючись порад у цій статті

MSBuild & Typescript

особливо частина про те, <TypeScriptCompile />куди я включив усі свої .ts-ресурси з оператором Включення та виключив інші, такі як node_modules з оператором Remove. Потім я видалив файл tsconfig.json у кожному проекті, що порушує право, і створені пакунки нута, і більше помилок


0

Я отримав цю саму помилку, коли зробив резервну копію node_modulesпапки в тому самому каталозі. Коли я стався, я намагався вирішити іншу помилку збірки. Я сподіваюся, що цей сценарій комусь допомагає. Видаліть папку резервного копіювання, і збірка завершиться.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.