tsconfig.json: Build: In der Konfigurationsdatei wurden keine Eingaben gefunden


135

Ich habe ein ASP.NET-Kernprojekt und erhalte diesen Fehler, wenn ich versuche, es zu erstellen:

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.

Das ist meine tsconfig.jsonDatei:

{
  "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/*"
  ]
}

Ist das ein Fehler oder mache ich etwas falsch? Ich habe kürzlich Visual Studio 2015 auf Update 3 aktualisiert. Ist dies schon einmal jemandem begegnet?


5
Dies ist beabsichtigtes Verhalten. Sie müssen etwas zum Kompilieren haben.
Aluan Haddad

1
@AluanHaddad Sie sagen dies, als ob es eine Tatsache ist. Können Sie bitte Ihre Behauptung nachweisen?
Serj Sagan


Ihre Quelle sollte sein, wo Sie in "include" auf tsconfig zeigen
Mohammad Kermani

Antworten:


244

Fügen Sie dem Typoskript-Skriptordner (dem Speicherort Ihrer tsconfig-Datei) eine leere Typoskriptdatei hinzu, um den Typoskript-Compiler zufrieden zu stellen.


59
was bedeutet das?
Christian Matthew

21
@Christian Matthew Dies bedeutet, dass Sie mindestens eine Typoskriptdatei zu dem Ordner hinzufügen müssen, in dem Ihre App den Typoskript-Compiler erfüllen soll.
Rood

12
Was meinst du mit Skriptordner? Können Sie bitte näher darauf eingehen?
San Jaisy

1
Ironischerweise habe ich diese Antwort vor langer Zeit verwendet (die tsconfig wurde hinzugefügt und dieses Problem wurde behoben). Als ich Vue zum Projekt hinzufügte, tauchte das Problem erneut auf ... also musste ich die tsconfig löschen, die ich in der Vergangenheit hinzugefügt hatte, und es funktionierte: P
joshmcode

1
Vielen Dank. Ich arbeite für mich. Aber kann jemand erklären, was tatsächlich dahinter steckt?
DriLLFreAK100

58

Sie können auch versuchen, Ihren Code-Editor neu zu starten. Das funktioniert auch gut.


Wow, das hat bei mir funktioniert!
JavaRunner

20

Ich verwende TypeScript in diesem Projekt überhaupt nicht, daher ist es ziemlich frustrierend, sich damit befassen zu müssen. Ich habe dies behoben, indem ich dem Projektstamm eine Datei tsconfig.json und eine leere Datei file.ts hinzugefügt habe. Die tsconfig.json enthält Folgendes:

{
  "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" ]
}

Danke, dieser hat für mich funktioniert. Es ist also nur ein Problem mit dem Update des Code-Editors, nicht mit React
Sanjay Poongunran

17

Wenn Sie ein includeArray haben (worüber sich der TypeScript-Linter wahrscheinlich beschwert):

tsconfig.json

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

Wenn Sie VSCode verwenden, können Sie Ihren TS-Server in Ihrem Editor ganz einfach neu starten, um ihn zur erneuten Auswertung der Datei aufzufordern.

CMD+ SHIFT+ P(auf Mac) öffnet die Eingabeaufforderung und sucht den TypeScript: Restart TS serverBefehl

Geben Sie hier die Bildbeschreibung ein


Wie erhält man den TypeScript- Befehl? Ich habe nur zB Datei , Git , GitLens usw.
Leo

1
@Leo Stellen Sie sicher, dass Sie eine .js/ .jsx/ .ts/ .tsxDatei anzeigen, wenn Sie nach dem Befehl suchen. Der Befehl ist beispielsweise nicht verfügbar, wenn Sie eine .htmlDatei
anzeigen

10

Wenn Sie den vs-Code zum Bearbeiten verwenden, starten Sie den Editor neu. Dieses Szenario hat mein Problem behoben. Ich denke, es ist das Problem mit dem Editor-Cache.


8

Wenn Sie die tsconfig.jsonDatei mit erstellen tsc --init, wird das Eingabe- und Ausgabedateiverzeichnis kommentiert. Dies ist also die Hauptursache für den Fehler.

Kommentieren Sie diese beiden Zeilen aus, um das Problem zu umgehen:

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

Anfangs würde es nach dem Nichtkommentieren wie oben aussehen.

Aber alle meine .ts-Skripte befanden sich im src-Ordner. Also habe ich / src angegeben.

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

Bitte beachten Sie, dass Sie den Speicherort Ihrer .ts-Skripte in rootDir angeben müssen.


5

Ich erhalte die Fehlermeldung "Es wurden keine Eingaben in der Konfigurationsdatei 'tsconfig.json' gefunden. Angegebene 'include'-Pfade waren '["**/*"]'und' exclude' -Pfade waren '["**/*.spec.ts","app_/**/*.ts","**/*.d.ts","node_modules"]'.

Ich habe eine .tsconfig-Datei, die ts-Dateien aus dem Ordner "./src" liest.

Das Problem hier ist, dass dieser Quellordner keine .ts-Dateien enthält und ich tslint ausführe. Ich habe das Problem behoben, indem ich die tslint-Aufgabe aus meiner gulp-Datei entfernt habe. Da ich keine .ts-Dateien zum Kompilieren und Flusen habe. Mein Problem wird dadurch gelöst.


4

Fügen Sie den Speicherort der .ts-Datei im Tag 'include' hinzu und kompilieren Sie dann die Arbeit. Ex.

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

3

Wenn Sie Visual Studio Code verwenden , erstellen Sie beim Erstellen des Projekts (dh Drücken von Strg + Umschalt + B ) Ihre .ts- Datei in den Ordner .vscode (ich weiß nicht, warum dies so ist) und generieren dann den TS18003-Fehler . Ich habe meine .ts- Datei aus dem .vscode-Ordner zurück in den Stammordner verschoben und das Projekt erneut erstellt.

Das Projekt wurde erfolgreich aufgebaut!


Die .tsconfig- Datei wird im Ordner .vscode abgelegt. Wenn Sie es aus dem Ordner .vscode verschieben, müssen Sie möglicherweise auch .vscode / task.json bearbeiten, um auf den neuen Speicherort zu verweisen
duggulous

3

Ich habe folgendes im Stammverzeichnis hinzugefügt (Visual Studio)

{
  "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
Nur eine leere "exclude": [ "" ]funktioniert auch (um die Standardeinstellung zu überschreiben, die ./ ist)
spygi

3

Ich habe alle meine .ts-Dateien in einem srcOrdner, der ein Geschwister von mir ist tsconfig.json. Ich habe diesen Fehler erhalten, als ich so includeaussah (es hat vorher funktioniert, ein Abhängigkeits-Upgrade hat den Fehler verursacht):

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

Das zu ändern hat das Problem für mich behoben:

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


1

Übrigens hatte gerade das gleiche Problem.

Wenn Sie meinen Fall hatten, dann haben Sie wahrscheinlich die Datei tsconfig.json nicht im selben Verzeichnis wie die .ts-Datei.

(In meinem Fall hatte ich dummerweise neben launch.json und task.json im Ordner .vscode: P)


so genau umgekehrt im Vergleich zu @Noximus Antwort: D
Tha Brad

1

Ich hatte vorhandene tsconfig-Dateien für 4 vorhandene Projekte in meiner Lösung. Nach dem Upgrade auf vs2017 trat dieses Problem auf. Es wurde behoben, indem den Dateien die (angeblich standardmäßigen) Einschluss- und Ausschlussabschnitte hinzugefügt wurden, wie von NicoJuicy beschrieben.


1
"outDir"

Sollte anders sein als

"rootDir"

Beispiel

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

0

Wenn Sie keine TypeScript-Kompilierung wünschen, deaktivieren Sie sie .csprojgemäß diesem Beitrag in Ihrer Datei .

Fügen Sie Ihrer .csprojDatei einfach die folgende Zeile hinzu :

<TypeScriptCompileBlocked>true</TypeScriptCompileBlocked>

0

Ich habe eine tsconfig.jsonDatei, die für keine .ts-Dateien gilt. Es befindet sich in einem separaten Ordner. Stattdessen verwende ich es nur als Basis für andere tsconfig-Dateien über "extends": "../Configs/tsconfig.json". Sobald ich die Basiskonfigurationsdatei in etwas anderes umbenannt hatte, z. B. base-tsconfig.json(und die extendsAnweisungen aktualisiert ), verschwand der Fehler und die Erweiterung funktionierte immer noch.


0

Ich habe den gleichen Fehler erhalten und in meinem Fall, weil vscode die .tsDatei nicht erkennen konnte .

Es wurde als Textdatei angezeigt und ich musste es umbenennen, um einen Buchstaben zu entfernen und wieder hinzuzufügen, damit es funktioniert.


0

Ich bin ständig auf dieses Problem gestoßen, als ich meine Projekte über Visual Studio 2019 in Nugets gepackt habe. Nachdem ich lange nach einer Lösung gesucht habe, habe ich dieses Problem anscheinend gelöst, indem ich den Ratschlägen in diesem Artikel gefolgt bin

MSBuild & Typescript

Insbesondere ein Teil davon, <TypeScriptCompile />wo ich alle meine .ts-Ressourcen in den Include-Operator aufgenommen und andere wie node_modules mit dem Remove-Operator ausgeschlossen habe. Ich habe dann die Datei tsconfig.json in jedem fehlerhaften Projekt gelöscht und die Nuget-Pakete wurden generiert und keine Fehler mehr


0

Ich habe denselben Fehler erhalten, als ich eine Sicherungskopie des node_modulesOrdners im selben Verzeichnis erstellt habe. Ich war gerade dabei, einen anderen Build-Fehler zu beheben, als dies auftrat. Ich hoffe, dieses Szenario hilft jemandem. Entfernen Sie den Sicherungsordner und der Build wird abgeschlossen.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.