7
votes

ERREUR: l'exécution native n'a pas été trouvée sur votre PATH. (Ionique 4)

Sorti de nulle part, étant en mesure de déployer mon application sur Android dans un passé récent, je reçois maintenant cette erreur en essayant d'exécuter 'ionic cordova run android'

[ERROR] native-run was not found on your PATH. Please install it globally: npm i -g native-run

Lorsque j'exécute «info ionique» sous Utilitaires, je vois que cordova-res et native-run sont installés, mais cette erreur se reproduit à chaque fois.

Sidenote : ' npm i -g native-run ' ne résout pas ce problème, l'erreur se reproduit juste

L'exécution de ls /usr/local/lib/node_modules renvoie: 'ionic cordova npm' (aucun signe de native-run, qui devrait être là)

Existe-t-il un moyen de l'installer directement à cet emplacement? Toute aide serait grandement appréciée.


4 commentaires

Pour l'instant, vous essayez d'exécuter la commande comme - ionic cordova run android --native-run=false . Remarque - Ce n'est pas la solution, juste une solution de contournement.


Je n'étais pas au courant de cette solution de contournement, merci pour cela.


J'essaierais de désinstaller et de réinstaller native-run . Si cela ne fonctionne pas, cela peut être un problème d'autorisations.


J'ai essayé cela et j'ai essayé d'exécuter la commande en utilisant sudo et cela ne suffit toujours pas. Merci quand même.


4 Réponses :


0
votes

Si vous faites npm root -g , il devrait vous montrer le chemin global où vos paquets sont installés. Il pointe vers la variable d'environnement NODE_PATH . Assurez-vous que tout est bien réglé?

Pour installer un package à un chemin souhaité, allez dans le répertoire souhaité et exécutez npm install package-name . Dans votre cas, accédez au chemin /usr/local/lib/ et exécutez npm install sans option globale.


0 commentaires

2
votes

J'ai aussi ce problème. Voici ce que j'ai fait pour y remédier.

1 - Exécutez ionic info à la racine de votre projet Ionic, vous devriez obtenir quelque chose comme.

Ionic:
   Ionic CLI                     : 5.2.4 (/usr/lib/node_modules/ionic)
   Ionic Framework               : @ionic/angular 4.9.0
   @angular-devkit/build-angular : 0.801.3
   @angular-devkit/schematics    : 8.1.3
   @angular/cli                  : 8.1.3
   @ionic/angular-toolkit        : 2.0.0

Cordova:
   Cordova CLI       : 9.0.0 (cordova-lib@9.0.1)
   Cordova Platforms : android 8.0.0
   Cordova Plugins   : cordova-plugin-ionic-keyboard 2.2.0, cordova-plugin-ionic-webview 4.1.1, (and 4 other plugins)

Utility:
   cordova-res : 0.6.0 
   native-run  : 0.2.8 

System:
   NodeJS : v10.16.3 (/usr/bin/node)
   npm    : 6.9.0
   OS     : Linux 5.0

2 - Exécutez cd /usr/lib (le répertoire où votre Ionic CLI est installé) puis vous lancez npm install native-run .

3 - Exécutez ln -s /usr/lib/node_modules/native-run/bin/native-run /usr/bin/native-run cela créera un lien vers votre fichier binaire.

Alors tu devrais être bon.


3 commentaires

Essayer l'étape 2 Je reçois dans la console: "Accès en écriture manquant à / usr / lib" suivi de nombreuses erreurs; l'utilisation du préfixe sudo ne résout pas ce problème.


Étape 3 Je reçois dans la console "Opération non autorisée" et "L'opération a été rejetée par votre système d'exploitation"


Si vous êtes sur un Mac, vous obtiendrez une "opération non autorisée" sur les deux commandes. Ignorez la première commande, installez npm globalement avec "npm i -g native-run" et créez simplement le lien symbolique comme "ln -s <chemin donné par npm root -g> / bin / native-run / usr / local / bin / exécution native "



0
votes

J'ai aussi ce problème. J'ai installé npm dans .npm-global donc l'exécution native n'a pas été trouvée. Je cours sur ce problème en installant native-run dans le dossier .npm-global et en créant le lien symbolique avec la commande ci-dessus sudo ln -s /home/user/.npm-global/lib/node_modules/native-run/bin/native -run / usr / bin / native-run

après cela, je lance la commande ionic cordova run android

Ça y est (bien sûr plusieurs heures avaient été perdues :-D)


0 commentaires

2
votes

vous devez mettre à jour vos bibliothèques en utilisant:

npm i -g native-run@latest


0 commentaires