ОШИБКА в ошибке TS5055: невозможно записать файл '', потому что он перезапишет входной файл с параметром allowJS и outDir

Я получаю следующую ошибку:

Ошибка построения

Мой tsconfig.json файл

{
  "compileOnSave": false,
  "compilerOptions": {
    "allowJs": true,
    //"outFile": "./dist/out-tsc",
    "outDir": "./dist",
    "sourceMap": true,
    "declaration": false,
    "moduleResolution": "node",
    "emitDecoratorMetadata": true,
    "experimentalDecorators": true,
    "target": "es5",
    "typeRoots": [
      "node_modules/@types"
    ],  
    // "exclude": [
    //   "node_modules"
    // ],
    "lib": [
      "es2017",
      "dom"
    ]
  }
}

Мой tsconfig.app.json файл:

"extends": "../tsconfig.json",
  "compilerOptions": {
    "allowJs": true,
    //"noEmit": true,
    //"outFile": "../out-tsc/app",
    "outDir": "../out-tsc/app",
    "baseUrl": "./",
    "module": "es2015",
    "types": []
  },
  "exclude": [
    "node_modules",
    "public",
    "test.ts",
    "**/*.spec.ts"
  ]

Если раскомментировать noEmit, проект успешно запускается, но он пустой.

Angular CLI: 1.6.0
Node: 8.9.1
OS: win32 x64
Angular: 5.1.0

angular/cli: 1.6.0
angular-devkit/build-optimizer: 0.0.35
angular-devkit/core: 0.0.22
angular-devkit/schematics: 0.0.41
ngtools/json-schema: 1.1.0
ngtools/webpack: 1.9.0
schematics/angular: 0.1.10
schematics/schematics: 0.0.10
typescript: 2.4.2
webpack: 3.10.0

Ссылки по теме: https://github.com/Microsoft/TypeScript/wiki/FAQ#why-am-i-getting-the-error-ts5055-cannot-write-file-xxxjs-because-it-будетперезаписыватьвходнойфайлприиспользованиифайловjavascript


person Danil Belokha    schedule 11.12.2017    source источник


Ответы (1)


Этот tsconfig работает для меня:

{
  "compileOnSave": false,
  "compilerOptions": {
    "allowJs": true,
    "outDir": "./out-tsc",

    "allowSyntheticDefaultImports": true,
    "sourceMap": true,
    "declaration": false,
    "emitDecoratorMetadata": true,
    "experimentalDecorators": true,
    "traceResolution": true,
    "target": "es5",
    "baseUrl": "./src",
    "paths": {
      // APP
      "app/*": ["./app/*"],
      "components/*": ["./app/components/*"],
      "services/*": ["./app/services/*"],
      "global/*": ["./app/global/*"],
      // ASSETS
      "assets/*": ["./assets/*"],
      // SHARED
      "shared/*": ["./shared/*"],
      "abstract/*": ["./shared/abstract/*"],
      "interfaces/*": ["./shared/interfaces/*"]
    },
    "typeRoots": [
      "node_modules/@types"
    ], 
    "lib": [
      "es2017",
      "dom"
    ]
  }
}

И tsconfig.app:

{
  "extends": "../tsconfig.json",
  "compilerOptions": {
    "outDir": "../out-tsc/app",
    "baseUrl": "./",
    "module": "es2015",
    "types": []
  },
  "exclude": [
    //"../node_modules/**",
    "public",
    "test.ts",
    "**/*.spec.ts"
  ]
}
person Danil Belokha    schedule 19.12.2017