web-dev-qa-db-fra.com

ionic build Android's Error: copyFileSync: impossible d'écrire dans le fichier dest

Lorsque j'utilise la commande: ionic cordova build Android, voici ce que je reçois:

cp: copyFileSync: impossible d'écrire dans le fichier dest (code = ENOENT):/Utilisateurs/mehdigriche/work/cam1/test/plateformes/Android/res/xml/config.xml

Analyse syntaxique /Users/mehdigriche/work/cam1/test/platforms/Android/res/xml/config.xml failed (noeud: 2306) UnhandledPromiseRejectionWarning: promesse non gérée rejet (id de rejet: 1): Erreur: ENOENT: aucun fichier ou répertoire de ce type, ouvrir '/Users/mehdigriche/work/cam1/test/platforms/Android/res/xml/config.xml'

[10:50:14] peluche fini i

12
mehdigriche

Ajouter ce crochet au projet cordova: patch-Android-studio-check.js

  1. Placez le fichier patch-Android-studio-check.js dans le répertoire hooks de votre projet

  2. Ajoutez les lignes suivantes au config.xml de votre projet:

    <platform name="Android">
        <hook src="hooks/patch-Android-studio-check.js" type="before_plugin_install" />
        <hook src="hooks/patch-Android-studio-check.js" type="before_plugin_add" />
        <hook src="hooks/patch-Android-studio-check.js" type="before_build" />
        <hook src="hooks/patch-Android-studio-check.js" type="before_run" />
        <hook src="hooks/patch-Android-studio-check.js" type="before_plugin_rm" />
    </platform>
    
  3. Supprimez le répertoire plugins:

    rm -rf plugins
    
  4. Réinstallez les plugins:

    ionic build
    
  5. Réinstallez la plateforme Android:

    cordova platform rm Android
    cordova platform add Android@latest
    
20
dtmp

Votre commande: ionic cordova build androird se trompe
Je pense que vous voulez dire: ionic cordova build Android

Mais essayez aussi: ionic cordova build --release Android

J'ai eu la même erreur, après deux jours de débogage, j'ai trouvé une solution pour moi:

dans le répertoire: plateformes/Android/cordova J'ai mis à jour dans le fichier Api.js l'objet locations, car les chemins d'accès sont incorrects.

l'objet d'emplacements actuels ressemble à ceci dans mon Api.js:

    this.locations = {
    root: self.root,
    www: path.join(self.root, 'assets/www'),
    res: path.join(self.root, 'res'),
    platformWww: path.join(self.root, 'platform_www'),
    configXml: path.join(self.root, 'app/src/main/res/xml/config.xml'),
    defaultConfigXml: path.join(self.root, 'cordova/defaults.xml'),
    strings: path.join(self.root, 'app/src/main/res/values/strings.xml'),
    manifest: path.join(self.root, 'app/src/main/AndroidManifest.xml'),
    build: path.join(self.root, 'build'),
    javaSrc: path.join(self.root, 'app/src/main/Java/'),
    // NOTE: Due to platformApi spec we need to return relative paths here
    cordovaJs: 'bin/templates/project/assets/www/cordova.js',
    cordovaJsSrc: 'cordova-js-src'
};

Après ces changements, j'ai pu créer mon application .J'ai aussi des erreurs dues à des plugins comme cordova-sqlite-storage, je l'ai donc supprimée et construite.

J'espère que ça aide

14
Apophis

Pour résoudre ce problème

cp: copyFileSync: impossible d'écrire dans le fichier dest (code = ENOENT):/Utilisateurs/mehdigriche/work/cam1/test/plateformes/Android/res/xml/config.xml

Créez un dossier nommé xml dans platforms/Android/res

8
Black Mamba

Apparemment, certains fichiers ne sont pas générés correctement lors de l’ajout d’Android +7. J’ai donc résolu le problème en procédant comme suit:

Tout d'abord enlever votre plate-forme,

ionic cordova platform rm Android

puis réinstallez une version inférieure (6.3 a fonctionné pour moi)

ionic cordova platform add [email protected]
5
zuest

J'ai rencontré le même problème ce matin et ma solution (plutôt radicale) était la suivante:

  1. Supprimer la plate-forme: ionic cordova platform rm Android
  2. Supprimez les dossiers suivants de votre dossier d'application: platforms, plugins & www
  3. Assurez-vous que vos dépendances sont disponibles en exécutant: npm install
  4. Ajoutez la plate-forme, cette étape va recréer les dossiers supprimés à l'étape 2 ci-dessus: ionic cordova platform add Android
  5. Enfin, construisez votre application: ionic cordova build Android
4
Richie254

Remarque sur la réponse de dtmp, l'utilisation du répertoire hooks semble être obsolète. Utiliser le répertoire 'scripts' à la place pourrait être plus approprié.

Lorsque vous essayez de créer une construction en utilisant ionic 2, l’utilisation d’un répertoire 'hooks' conduit à ne pas trouver le hook js.

1
Mark Thompson

En supposant que 

Androird

la partie est juste une faute de frappe ici.

Découvrez ceci: https://github.com/ionic-team/ionic/issues/13702

C'est un problème connu et pas encore résolu!

0
MaxFot
ionic cordova rm platform Android

supprimer le dossier www et plugins

npm cache clean
npm install audit fix
ionic cordova build  Android
0
Siundu254

Si vous êtes comme moi, essayez de surmonter le même problème et essayez tout le chemin écrit comme solution mais pas Essayez cette solution.

  1. Ouvrez le fichier project.json de votre dossier de projet.
  2. Ajoutez cette dépendance "Android-versions" : "1.3.0".
  3. Exécutez npm i.
  4. Exécuter la commande Sudo ionic cordova run Android

Bonne codage!

0