Vyhledávání na webu

angular - Angular5: soubory polyfills.ts a \main.ts chybí v kompilaci TypeScriptu


Toto je struktura mého projektu Angular5.

Sekce tsconfig.app.json i package.json obsahuje tuto část

 "include": [
      "/src/main.ts",
      "/src/polyfills.ts"
    ]

Ale ať dělám cokoli, stále dostávám tuto chybu:

    \polyfills.ts & \main.ts is missing from the TypeScript compilation. 
Please make sure it is in your tsconfig via the 'files' or 'include' property.

  tsconfig.json
        {
          "compileOnSave": false,
          "compilerOptions": {
            "outDir": "./dist/out-tsc",
            "sourceMap": true,
            "declaration": false,
            "moduleResolution": "node",
            "emitDecoratorMetadata": true,
            "experimentalDecorators": true,
            "target": "es5",
            "typeRoots": [
              "node_modules/@types"
            ],
            "lib": [
              "es2017",
              "dom"
            ]
          }
        }
src/tsconfig.app.json
{
  "extends": "../tsconfig.json",
  "compilerOptions": {
    "outDir": "../out-tsc/app",
    "baseUrl": "./",
    "module": "es2015",
    "types": []
  },
  "include": [
    "main.ts",
    "polyfills.ts"
  ],
  "exclude": [
    "test.ts",
    "**/*.spec.ts"
  ]
}

Odpověď č. 1

Našel jsem řešení. Problém je v tom, že jsem byl v adresáři symbolického odkazu ($HOME/dev -> d:\dev\). Přesuňte se do původního adresáře (d:\dev) a spusťte své příkazy a bude to fungovat.

Zdroj: https://github.com/angular/angular-cli/issues/9909

Odpověď č. 2

Úprava souboru angular.json přidáním následujícího atributu pod uzel projects/project/architect/build/options by měla pomoci, aby "preserveSymlinks": true fungovalo.

{
  ...  
  "projects": {
    "<your_project_name>": {
      ...  
      "architect": {
        "build": {
          ...  
          "options": {
            ...
            "preserveSymlinks": true
          }
          ...
         }
       }
      }
    }
}

Související články