TypeScript错误:无法写入文件“index.d.ts”,因为它将覆盖输入文件

TypeScript错误:无法写入文件“index.d.ts”,因为它将覆盖输入文件,typescript,Typescript,我在运行tsc时遇到问题 my tsconfig.json: 此问题在以下情况下得到解决: 排除tsconfig中的index.ts 运行tsc index.ts 在tsconfig中关闭声明 将索引重命名为其他名称! 在package.json中更改typescript主文件时,我也遇到了同样的问题 例如:将index.ts重命名为foo.ts 将package.json更改为 tsc错误: error TS5055: Cannot write file 'index.d.ts' becaus

我在运行tsc时遇到问题

my tsconfig.json:

此问题在以下情况下得到解决:

排除tsconfig中的index.ts 运行tsc index.ts 在tsconfig中关闭声明 将索引重命名为其他名称! 在package.json中更改typescript主文件时,我也遇到了同样的问题 例如:将index.ts重命名为foo.ts

将package.json更改为

tsc错误:

error TS5055: Cannot write file 'index.d.ts' because it would overwrite input file.
无论文件内容如何,任何代码内容都有相同的问题

我能做些什么来修理它

源代码:
提前感谢您。

在您的示例文件夹中,您从“../”编写了导入*作为测试 看

它应该加载index.ts、index.d.ts或package.json类型字段。 这就是问题所在。您的package.json确实指出index.d.ts是此包的定义文件,请参阅 因此,从“../”导入*作为测试将加载package.json、加载typings字段,然后加载index.d.ts,这会导致问题

两种解决方案

建议采用导入索引文件而不是根文件夹的方法 e、 g.从“../index”导入*作为测试;或者

将输出移动到其他文件夹,例如\lib\index.d.ts


在这两种解决方案中,您都应该加载目标文件,而不是文件夹。由于您不再加载根文件夹,问题将得到解决。

我也遇到了同样的问题,修复起来非常简单。我删除了node_模块,然后删除了typings文件夹

在package.json中,我在

scripts: {
    ...
    "tsc": "tsc",
    "typings": "typings"
    ...
}
然后运行命令:

npm安装 npm运行tsc npm运行打字安装
也许更好的方法是从构建中排除目标目录。该键在outDir和exclude键中包含相同的目录:


非常感谢其他人的回答,但对我来说,这个问题更简单、更愚蠢。我让WebStorm为我选择了最好的导入语句,但忽略了它包含了dist目录中的一个文件,这就是我的输出设置


一旦找到原因,错误就更有意义了,因为它确实试图写入用作输入的输出文件。

我在tsconfig temporary中排除index.ts以解决此问题,并在index.ts更改时单独运行tsc index.ts!:也许您在代码中的某个地方引用了index.d.ts,然后在编译时,编译器认为index.d.ts是源代码的一部分,因此抛出该错误。只是一个想法。如果你没有声明编译会发生什么:真的?你的意思是什么?你的评论没有得分,但你是对的,我不知道答案,但我在问问题/提出建议,以尝试帮助你解决问题或找到解决问题的方法,直到问题得到解决。不客气。outDir可以与问题相关,因为它将源代码与输出分开,然后它不应该抱怨在源文件上写入内容,也许,只是一个想法,但也许它不会工作,该死,不会得到我的宝贵意见。链接断了,你最好复制使用它的代码片段URLs@Al-谢谢你,我更新了链接,正如您所见,我编写了代码,并链接源代码以获取更多信息
"typescript": {
  "main": "foo.ts"
}
error TS5055: Cannot write file 'index.d.ts' because it would overwrite input file.
scripts: {
    ...
    "tsc": "tsc",
    "typings": "typings"
    ...
}
{
    "compilerOptions": {
        "module": "commonjs",
        "target": "es6",
        "noImplicitAny": false,
        "sourceMap": true,
        "experimentalDecorators": true,
        "outDir": "target",
        "declaration": true
    },
    "exclude": [
        "node_modules",
        "target"
    ]
}