tsconfig.json: Build: Nessun input trovato nel file di configurazione


136

Ho un progetto principale ASP.NET e ricevo questo errore quando provo a costruirlo:

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.

Questo è il mio tsconfig.jsonfile:

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

È un bug o sto facendo qualcosa di sbagliato? Di recente ho aggiornato Visual Studio 2015 per l'aggiornamento 3. Qualcuno l'ha mai visto prima?


5
Questo è un comportamento previsto. Devi avere qualcosa da compilare.
Aluan Haddad,

1
@AluanHaddad Lo affermi come se fosse un fatto. Potete per favore fornire prove per la vostra affermazione.
Serj Sagan,


La tua fonte dovrebbe essere dove stai indicando "include" su tsconfig
Mohammad Kermani,

Risposte:


245

Aggiungi un file dattiloscritto vuoto nella cartella degli script dattiloscritto (la posizione del tuo file tsconfig) per soddisfare il compilatore dattiloscritto.


59
Cosa significa questo?
Christian Matthew,

21
@Christian Matthew Ciò significa che è necessario aggiungere almeno un file dattiloscritto alla cartella in cui l'app deve soddisfare il compilatore dattiloscritto.
Rood

12
Cosa intendi per cartella degli script. Potete per favore elaborare di più ??
San Jaisy,

1
Ironicamente, ho usato questa risposta molto tempo fa (aggiunto tsconfig e risolto questo problema). Quando ho aggiunto Vue al progetto, il problema è emerso di nuovo ... quindi ho dovuto eliminare tsconfig che ho aggiunto in passato e ha funzionato: P
joshmcode

1
Grazie. Lavora per me. Qualcuno può spiegare cosa sta realmente accadendo dietro?
DriLLFreAK100

60

Puoi anche provare a riavviare l'editor di codice. Funziona anche bene.


Wow, ha funzionato per me!
JavaRunner

20

Non sto usando TypeScript in questo progetto, quindi è abbastanza frustrante doverlo fare. Ho risolto questo problema aggiungendo un file tsconfig.json e un file file.ts vuoto alla radice del progetto. Tsconfig.json contiene questo:

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

Grazie, questo ha funzionato per me. Quindi è solo un problema di aggiornamento dell'editor di codice vs non con React
Sanjay Poongunran

17

Se hai un includearray (che è ciò di cui probabilmente si lamenta linter TypeScript):

tsconfig.json

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

e stai usando VSCode, puoi riavviare il tuo server TS nel tuo editor con estrema facilità per chiedergli di rivalutare il file.

CMD+ SHIFT+ P(su Mac) aprirà il prompt dei comandi, quindi troverà il TypeScript: Restart TS servercomando

inserisci qui la descrizione dell'immagine


Come si ottiene il comando TypeScript ? Ho solo ad esempio File , Git , GitLens , ecc.
Leo

1
@Leo assicurati di visualizzare un file .js/ .jsx/ .ts/ .tsxquando cerchi il comando. Il comando, ad esempio, non è disponibile quando si visualizza un .htmlfile
FrostyDog

10

Se stai usando il codice vs per la modifica, prova a riavviare l'editor. Questo scenario ha risolto il mio problema. Penso che sia il problema con la cache dell'editor.


8

Quando si crea il tsconfig.jsonfile tsc --init, quindi commenta la directory del file di input e output. Quindi questa è la causa principale dell'errore.

Per aggirare il problema, rimuovere il commento da queste due righe:

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

Inizialmente sembrerebbe sopra dopo aver commentato.

Ma tutti i miei script .ts erano all'interno della cartella src. Quindi ho specificato / src.

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

Si noti che è necessario specificare la posizione degli script .ts in rootDir.


5

Ricevo questo errore "Nessun input trovato nel file di configurazione 'tsconfig.json'. I percorsi 'include' specificati erano '["**/*"]'e i percorsi 'exclude' erano'["**/*.spec.ts","app_/**/*.ts","**/*.d.ts","node_modules"]' .

Ho un file .tsconfig, che legge i file ts dalla cartella "./src".

Il problema qui è con quella cartella di origine che non contiene file .ts e sto eseguendo tslint. Ho risolto il problema rimuovendo l'attività tslint dal mio file gulp. Poiché non ho alcun file .ts da compilare e sfogliare. In questo modo il mio problema viene risolto.


4

aggiungi la posizione del file .ts nel tag 'include' quindi compila il lavoro correttamente. ex.

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

3

Quando si utilizza Visual Studio Code , la creazione del progetto (ovvero premendo Ctrl + Maiusc + B ), sposta il file .ts nella cartella .vscode (non so perché lo faccia), quindi genera l' errore TS18003 . Quello che ho fatto è stato spostare il mio file .ts fuori dalla cartella .vscode , di nuovo nella cartella principale e ricostruire il progetto.

Il progetto è stato realizzato con successo!


inserisce il file .tsconfig nella cartella .vscode. Se lo sposti dalla cartella .vscode, potresti anche dover modificare .vscode / task.json per puntare alla nuova posizione
duggulous

3

Ho aggiunto quanto segue nel root (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
Anche solo un vuoto "exclude": [ "" ]funziona (per sovrascrivere il valore predefinito che è ./)
spygi

3

Ho tutti i miei file .ts all'interno di una srccartella che è un mio fratello tsconfig.json. Stavo ricevendo questo errore quando il mio includeassomigliava a questo (funzionava prima, un aggiornamento della dipendenza ha causato l'errore visualizzato):

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

cambiarlo in questo risolto il problema per me:

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


1

A proposito, ho appena avuto lo stesso problema.

Se hai avuto il mio caso, probabilmente hai tsconfig.json non nella stessa directory del file .ts.

(Nel mio caso ho avuto stupidamente accanto a launch.json e Task.json nella cartella .vscode: P)


quindi esattamente il contrario rispetto alla risposta di @Noximus: D
Tha Brad

1

Nella mia soluzione avevo file tsconfig esistenti per 4 progetti esistenti. Dopo l'aggiornamento a vs2017 ho riscontrato questo problema. È stato corretto aggiungendo le sezioni (presumibilmente predefinite) di inclusione ed esclusione ai file, come descritto da NicoJuicy.


1
"outDir"

Dovrebbe essere diverso da

"rootDir"

esempio

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

0

Se non vuoi compilare TypeScript, disabilitalo nel tuo .csprojfile, secondo questo post .

Aggiungi la seguente riga al tuo .csprojfile:

<TypeScriptCompileBlocked>true</TypeScriptCompileBlocked>

0

Ho un tsconfig.jsonfile che non si applica a nessun file .ts. È in una cartella separata. Invece lo uso solo come base per altri file tsconfig tramite "extends": "../Configs/tsconfig.json". Non appena ho rinominato il file di configurazione di base in qualcos'altro, ad esempio base-tsconfig.json(e ho aggiornato le extendsistruzioni), l'errore è andato via e l'estensione continuava a funzionare.


0

Ho avuto lo stesso errore e nel mio caso è stato perché vscode non è riuscito a riconoscerlo .ts file.

Lo vedevo come file di testo e ho dovuto rinominarlo per rimuovere una lettera e aggiungerlo nuovamente per farlo funzionare.


0

Mi sono imbattuto costantemente in questo problema mentre impacchettavo i miei progetti in pepite tramite Visual Studio 2019. Dopo aver cercato una soluzione per anni, sembra che abbia risolto questo seguendo i consigli in questo articolo

MSBuild & Typescript

in particolare parte su <TypeScriptCompile />dove ho incluso tutte le mie risorse .ts con l'operatore Includi e ne ho escluse altre come node_modules con l'operatore Rimuovi. Ho quindi eliminato il file tsconfig.json in ogni progetto offensivo e sono stati generati i pacchetti nuget e non più errori


0

Ho ricevuto questo stesso errore quando ho effettuato una copia di backup della node_modulescartella nella stessa directory. Stavo provando a risolvere un errore di build diverso quando si è verificato. Spero che questo scenario aiuti qualcuno. Rimuovere la cartella di backup e la compilazione verrà completata.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.