J'ai cette déclaration d'importation dans un projet Angular5:
import {plugins, SCECodeGenType} from 'sce-plugins/code-generation';
cela résout ce chemin sur mon système de fichiers:
/Users/.../suman-chrome-extension/node_modules/sce-plugins/code-generation/index.d.ts
Lors de la création de l'application avec ng build -w
, J'obtiens cette erreur:
ERROR in ../sce-plugins/code-generation/index.ts Module build failed: Error: /Users/alexamil/WebstormProjects/oresoftware/sumanjs/sce-plugins/code-generation/index.ts is missing from the TypeScript compilation. Please make sure it is in your tsconfig via the 'files' or 'include' property.
at AngularCompilerPlugin.getCompiledFile (/Users/alexamil/WebstormProjects/oresoftware/sumanjs/suman-chrome-extension/node_modules/@ngtools/webpack/src/angular_compiler_plugin.js:662:23)
at plugin.done.then (/Users/alexamil/WebstormProjects/oresoftware/sumanjs/suman-chrome-extension/node_modules/@ngtools/webpack/src/loader.js:467:39)
at <anonymous> @ ./src/app/shared/services/lang.service.ts 14:24-62 @ ./src/app/app.module.ts @ ./src/main.ts @ multi ./src/main.ts
Je pense que c'est parce que j'utilise npm link
pour lier le 'sce-plugins'
projet de développement local.
Je constate des problèmes d'utilisation de npm link
avec les projets Angular5 ici:
https://github.com/angular/angular-cli/issues/3875
https://github.com/angular/angular-cli/issues/8677
https://github.com/angular/angular-cli/issues/9376
quelqu'un sait comment réparer?
Mise à jour:
Cela ne semble pas avoir à voir avec npm link
perse, ou liens symboliques. Si je copie simplement le répertoire local sur node_modules/sce-plugins
, J'obtiens la même fichue erreur. Pourtant, si je npm install
sce-plugins dans node_modules alors je fais pas obtenir l'erreur. Très étrange, cela semble avoir à voir avec le angular-cli, pas avec NPM.
J'avais le même problème lors de la migration de mon application de Angular 5 à 6, correction que j'ai appliquée:
Ajout de l'entrée du fichier manquant dans includes array
de tsconfig.app.json (ATTENTION: le nom de fichier n'est pas tsconfig.json)
Assurez-vous également que le chemin d'accès au fichier manquant que vous mentionnez est relatif à tsconfig.app.json