heroku: command not found
Cela semble avoir été résolu avant dans Comment puis-je utiliser des gemmes avec Ubuntu? ainsi que dans d'autres réponses, mais aucune des solutions ne semble fonctionner pour moi.
Je suis avec Mac OSX 10.6
J'ai installé heroku à l'aide de bundler. Ce qui suit montre mon joyau de l'environnement et de mon chemin, j'ai essayé d'ajouter les dossiers répertoriés dans le RÉPERTOIRE EXÉCUTABLE et le GEM CHEMINS de my $PATH, mais je reçois toujours command not found quand je tape heroku de l'intérieur de mon rails de projet de.
$ bundle show heroku
/Library/Ruby/Gems/1.8/gems/heroku-1.18.3
$ gem environment
RubyGems Environment:
- RUBYGEMS VERSION: 1.6.1
- RUBY VERSION: 1.8.7 (2009-06-12 patchlevel 174) [universal-darwin10.0]
- INSTALLATION DIRECTORY: /Library/Ruby/Gems/1.8
- RUBY EXECUTABLE: /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby
- EXECUTABLE DIRECTORY: /usr/bin
- RUBYGEMS PLATFORMS:
- ruby
- universal-darwin-10
- GEM PATHS:
- /Library/Ruby/Gems/1.8
- /Users/iantinsley/.gem/ruby/1.8
- /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/gems/1.8
- GEM CONFIGURATION:
- :update_sources => true
- :verbose => true
- :benchmark => false
- :backtrace => false
- :bulk_threshold => 1000
- REMOTE SOURCES:
- http://rubygems.org/
$ echo $PATH
/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/Users/iantinsley/bin:/usr/local/bin:/usr/bin
$ heroku
-bash: heroku: command not found
toute aide grandement appréciée
Pouvez-vous cut-n-coller la commande et de sortie de ce qui est défectueux? 🙂
ok. de commande et de sortie ajouté
Ne
Oui, bundle exec fonctionne très bien que je peux vivre avec. L'exécution de heroku de l' /Bibliothèque/Ruby/Gems/1.8/gems/heroku-1.18.3/bin échoue comme les dépendances ne sont pas d'être chargé. J'ai détaillé tout cela dans une "réponse", mais quelqu'un l'a supprimé - pas sûr pourquoi.
Merci de mettre à jour le post, excellent. Dommage sur votre avenant en cours de suppression. Si vous pouvez éditer votre post pour y inclure la trace de la pile, ce serait utile. 🙂 Je vais deviner que vous devez ajouter des répertoires à votre
ok. de commande et de sortie ajouté
Ne
bundle exec heroku
travail?Oui, bundle exec fonctionne très bien que je peux vivre avec. L'exécution de heroku de l' /Bibliothèque/Ruby/Gems/1.8/gems/heroku-1.18.3/bin échoue comme les dépendances ne sont pas d'être chargé. J'ai détaillé tout cela dans une "réponse", mais quelqu'un l'a supprimé - pas sûr pourquoi.
Merci de mettre à jour le post, excellent. Dommage sur votre avenant en cours de suppression. Si vous pouvez éditer votre post pour y inclure la trace de la pile, ce serait utile. 🙂 Je vais deviner que vous devez ajouter des répertoires à votre
RUBYLIB
variable d'environnement (voir la ruby(1)
page de manuel pour plus de détails) afin que Ruby pouvez trouver les paquets requis, mais sans voir le message d'erreur spécifique, il va être difficile de savoir si je suis sur la bonne voie.OriginalL'auteur Ian | 2011-03-12
Vous devez vous connecter pour publier un commentaire.
Par défaut, rubygems sur un mac installe exécutables dans
/usr/bin
, plutôt que sous la gemme dir à/Library/Ruby/Gems
. Cependant, ces répertoires ont des autorisations différentes:de sorte que s'ils sont tous deux la propriété
root
, les joyaux du répertoire est accessible en écriture par tout le monde dans leadmin
groupe, et/usr/bin
ne l'est pas.Ce qui semble s'être passé ici est bundler n'a pas été en mesure d'installer le heroku l'exécutable en
/usr/bin
quand il a installé le gem, probablement à cause de ce problème d'autorisations. Ce blog suggère cela a été un problème avec les versions antérieures de bundler sur OSX.L'exécutable que rubygems installe est pas juste une copie de la heroku script dans le répertoire bin de la gemme (c'est à dire
/Library/Ruby/Gems/1.8/gems/heroku-1.18.3/bin
). Au lieu de cela c'est un script généré par rubygems que le premier chargement de rubygems pour lui permettre de travailler c'est de la magie sur le ruby chemin de chargement de sorte que lorsque le script lui-même est alors appeléerequire
états sont en mesure de trouver les bibliothèques appropriées.Cela signifie que si vous appelez le script directement, rubygems ne seront pas chargés de sorte que le chemin de chargement ne sera pas mis en place et, comme vous l'avez vu, vous obtiendrez des erreurs sur les dépendances manquantes. Pour démontrer cela, essayez de lancer
qui exécute le script, mais les charges jusqu'rubygems premier. Cela devrait (pourrait - je ne sais pas pour certains) de travail.
C'est aussi pourquoi
bundle exec heroku
œuvres. Bundler définit le chemin de chargement en tant que de besoin. En outre, de ce fait, la charge de chemin d'accès est configuré pour correspondre à votreGemfile.lock
fichier - c'est en effet le point de bundler.Je ne recommanderais pas d'ajouter quoi que ce soit à votre
$PATH
. Comme nous l'avons vu, il n'a pas de travail, mais aussi, vous aurez besoin de le changer à chaque fois que vous mettez à niveau vers une version plus récente de la heroku gem.Je recommande de ne rien ajouter à votre
$RUBYLIB
variable. Cela peut réellement obtenir la commande heroku de travail, mais tout l'intérêt de l'utilisation de rubygems et bundler est qu'ils gèrent des trucs comme ça pour vous.Ma première recommandation serait d'utiliser rvm. C'est un outil très utile, et je pense qu'il pourrait être intéressant de passer quelques temps à la recherche.
Si vous êtes incapable ou refuse de le faire, alors vous avez probablement besoin de réinstaller le heroku gem, et vérifiez qu'il est installé correctement. D'abord supprimer la gemme:
Alors assurez-vous que vous avez la dernière version de bundler:
Enfin réinstaller avec
et il devrait vous demander votre mot de passe pour installer les exécutables dans le bon endroit. Note ne pas utilisation
sudo
ici - voir le lien ci-dessus pour plus de détails.OriginalL'auteur matt
Essayez d'ajouter ceci à la fin de votre
PATH
:Si cela ne fonctionne pas, alors demandez à Spotlight pour trouver un fichier nommé "heroku" et ajouter le répertoire approprié pour votre
PATH
. Si vous avez un peu de temps et envie d'être un vieux de la vieille école unix mec un peu:Vous pouvez également utiliser Cendrillon pour configurer votre Ruby/PostgreSQL/MySQL/MongoDB/... de l'environnement. Qui vous donnera les dernières versions de tout et de configurer votre chemins de la sagesse. J'ai eu quelques problèmes à obtenir de Cendrillon qui se passe, mais il a été une bouée de sauvetage, et c'est très bien la manière dont il met tout en
~/Developer/
plutôt que d'éparpiller tout plus de l'endroit.sarnold du commentaire à propos de
RUBYLIB
sonne juste. Vous devriez être en mesure de modifier la question pour ajouter le stacktrace, votre réponse est sans doute supprimé car il s'agissait d'une question de mise à jour plutôt que d'une réponse.OriginalL'auteur mu is too short
Fixé par la réinstallation de la Heroku Toolbelt de http://toolbelt.heroku.com
OriginalL'auteur The Whiz of Oz
Désinstaller puis le réinstaller avec la commande ci-dessous dans
sudo
œuvres. Je suis sous macOS 10.14.curl https://cli-assets.heroku.com/install.sh | sh
J'ai d'abord installer avec homebrew mais la commande n'fonds d'erreur est toujours produit. La raison pourrait être que curl installation faire la mise en place dans les deux répertoires mentionnés dans le document officiel.
OriginalL'auteur Lens L.