tsconfig.json: Build: ไม่พบอินพุตในไฟล์ config


138

ฉันมีโครงการหลักของ 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
นี่คือพฤติกรรมที่ตั้งใจไว้ คุณต้องมีสิ่งที่จะรวบรวม
Aluan Haddad

1
@AluanHaddad คุณบอกว่ามันเป็นความจริง คุณช่วยแสดงหลักฐานเพื่อยืนยันได้ไหม
Serj Sagan


แหล่งที่มาของคุณควรเป็นที่ที่คุณกำลังชี้ใน "รวม" ใน tsconfig
Mohammad Kermani

คำตอบ:


247

เพิ่มไฟล์ typescript ว่างลงในโฟลเดอร์ typescript scripts (ตำแหน่งของไฟล์ tsconfig ของคุณ) เพื่อตอบสนองคอมไพเลอร์ typescript


60
สิ่งนี้หมายความว่า?
Christian Matthew

21
@Christian Matthew ซึ่งหมายความว่าคุณต้องเพิ่มไฟล์ typescript อย่างน้อยหนึ่งไฟล์ในโฟลเดอร์ที่แอปของคุณใช้เพื่อตอบสนองคอมไพเลอร์ typescript
rood

12
คุณหมายถึงอะไรโดยโฟลเดอร์สคริปต์ คุณช่วยอธิบายเพิ่มเติมได้ไหม ??
San Jaisy

1
Ironcially .. ฉันใช้คำตอบนี้เมื่อนานมาแล้ว (เพิ่ม tsconfig และแก้ไขปัญหานี้แล้ว) เมื่อฉันเพิ่ม Vue ในโปรเจ็กต์ปัญหาก็ผุดขึ้นมาอีกครั้ง ... ดังนั้นฉันจึงต้องลบ tsconfig ที่ฉันเพิ่มในอดีตและใช้งานได้: P
joshmcode

1
ขอบคุณ ทำงานให้ฉัน แต่ใครสามารถอธิบายได้ว่าเกิดอะไรขึ้นเบื้องหลัง?
DriLLFreAK100

61

คุณยังสามารถลองรีสตาร์ทตัวแก้ไขโค้ดของคุณ นั่นก็ใช้ได้ดีเช่นกัน


ว้าวได้ผลสำหรับฉัน!
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
Sanjay Poongunran

17

หากคุณมีincludeอาร์เรย์ (ซึ่งเป็นสิ่งที่ลินเตอร์ TypeScript มักจะบ่น):

tsconfig.json

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

และคุณใช้ VSCode คุณสามารถรีสตาร์ทเซิร์ฟเวอร์ TS ภายในโปรแกรมแก้ไขของคุณได้อย่างง่ายดายเพื่อแจ้งให้ทำการประเมินไฟล์อีกครั้ง

CMD+ SHIFT+ P(บน Mac) จะเปิดพรอมต์คำสั่งจากนั้นค้นหาTypeScript: Restart TS serverคำสั่ง

ใส่คำอธิบายภาพที่นี่


คุณรับคำสั่งTypeScript ได้อย่างไร ฉันมีเพียงFile , Git , GitLensและอื่น ๆ
Leo

1
@Leo ให้แน่ใจว่าคุณกำลังดู.js/ .jsx/ .ts/ .tsxไฟล์เมื่อคุณมองหาคำสั่ง ตัวอย่างเช่นคำสั่งไม่สามารถใช้ได้เมื่อคุณกำลังดู.htmlไฟล์
FrostyDog

10

หากคุณใช้รหัส vs เพื่อแก้ไขให้ลองรีสตาร์ทตัวแก้ไขสถานการณ์นี้แก้ไขปัญหาของฉันฉันคิดว่ามันเป็นปัญหากับแคชของตัวแก้ไข


8

เมื่อคุณสร้างtsconfig.jsonไฟล์โดยคอมเมนtsc --initต์ไดเร็กทอรีไฟล์อินพุตและเอาต์พุต นี่คือต้นตอของข้อผิดพลาด

ในการแก้ไขปัญหาให้ยกเลิกการใส่ข้อคิดเห็นสองบรรทัดนี้:

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

ในขั้นต้นจะมีลักษณะดังนี้หลังจากยกเลิกการแสดงความคิดเห็น

แต่สคริปต์. ts ทั้งหมดของฉันอยู่ในโฟลเดอร์ src ดังนั้นฉันจึงระบุ / src

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

โปรดทราบว่าคุณต้องระบุตำแหน่งของสคริปต์. ts ของคุณใน rootDir


5

ฉันได้รับข้อผิดพลาดนี้ "ไม่มีปัจจัยการผลิตที่ถูกพบในไฟล์ config 'tsconfig.json.' ระบุ 'รวมถึง' เส้นทางได้'["**/*"]'และ 'ยกเว้น' '["**/*.spec.ts","app_/**/*.ts","**/*.d.ts","node_modules"]'เส้นทางได้

ฉันมีไฟล์. tsconfig ซึ่งอ่านไฟล์ ts จากโฟลเดอร์ "./src"

ปัญหานี้เกิดจากโฟลเดอร์ต้นทางที่ไม่มีไฟล์. ts และฉันกำลังเรียกใช้ tslint ฉันแก้ไขปัญหาโดยการลบงาน tslint ออกจากไฟล์อึกของฉัน เนื่องจากฉันไม่มีไฟล์. ts ที่จะคอมไพล์และทับหลัง ปัญหาของฉันได้รับการแก้ไขโดยการทำเช่นนี้



3

เมื่อใช้Visual Studio รหัสอาคารโครงการ (เช่นการกดCtrl + Shift ค้าง + B ) การเคลื่อนไหวของคุณ.tsไฟล์ลงในโฟลเดอร์ .vscode (ผมไม่ทราบว่าทำไมมันไม่นี้) แล้วสร้างข้อผิดพลาด TS18003 สิ่งที่ฉันทำคือย้ายไฟล์. tsของฉันออกจากโฟลเดอร์. vscodeกลับไปที่โฟลเดอร์รูท และสร้างโครงการอีกครั้ง

โครงการสร้างสำเร็จ!


มันทำให้ไฟล์. tsconfigลงในโฟลเดอร์. vscode หากคุณย้ายออกจากโฟลเดอร์. vscode คุณอาจต้องแก้ไข. vscode / task.json เพื่อชี้ไปยังตำแหน่งใหม่
duggulous

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": [ "" ]ก็ทำงานได้เช่นกัน (เพื่อแทนที่ค่าเริ่มต้นซึ่งเป็น. /)
spygi

3

ฉันมีทั้งหมดของฉัน .ts ไฟล์ภายในโฟลเดอร์ที่เป็นพี่น้องของฉันsrc tsconfig.jsonฉันได้รับข้อผิดพลาดนี้เมื่อมีincludeลักษณะเช่นนี้ (ใช้งานได้ก่อนหน้านี้การอัปเกรดการพึ่งพาบางอย่างทำให้เกิดข้อผิดพลาดปรากฏขึ้น):

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

การเปลี่ยนเป็นสิ่งนี้ช่วยแก้ปัญหาให้ฉัน:

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


1

Btw เพิ่งมีปัญหาเดียวกัน

หากคุณมีกรณีของฉันคุณอาจมี tsconfig.json ไม่ได้อยู่ในไดเร็กทอรีเดียวกับไฟล์. ts

(ในกรณีของฉันฉันโง่ติดกับ launch.json และ task.json ภายในโฟลเดอร์. vscode: P)


ดังนั้นในทางกลับกันเมื่อเทียบกับคำตอบของ @Noximus: D
ท่าแบรด

1

ฉันมีไฟล์ tsconfig สำหรับ 4 โครงการที่มีอยู่ในโซลูชันของฉัน หลังจากอัปเกรดเป็น vs2017 ฉันประสบปัญหานี้ ได้รับการแก้ไขโดยการเพิ่มส่วน (ค่าเริ่มต้นที่คาดคะเน) รวมและไม่รวมลงในไฟล์ตามที่อธิบายโดย NicoJuicy


1

หากคุณไม่ต้องการคอมไพล์ 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 ในแต่ละโครงการที่กระทำผิดและสร้างแพ็คเกจ nuget และไม่มีข้อผิดพลาดอีก


0

ฉันได้รับข้อผิดพลาดเดียวกันนี้เมื่อฉันทำสำเนาสำรองของnode_modulesโฟลเดอร์ในไดเรกทอรีเดียวกัน ฉันอยู่ระหว่างการพยายามแก้ไขข้อผิดพลาดของบิลด์อื่นเมื่อเกิดเหตุการณ์นี้ ฉันหวังว่าสถานการณ์นี้จะช่วยใครบางคนได้ ลบโฟลเดอร์สำรองและการสร้างจะเสร็จสมบูรณ์

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.