2010-02-08 7 views
10

Je tente de construire ma première gemme de rubis et tout semblait aller bien jusqu'à ce que j'ai essayé d'installer la gemme. J'utilise RVM donc pas besoin de 'sudo gem install' ici.Comment résoudre une erreur d'autorisation lors de l'installation d'une gemme personnalisée?

D'abord, je tenté de faire ce qui suit:

jim:~/Desktop/spectest \ [git:master] 
→ rake manifest 
(in /Users/jim/Desktop/spectest) 
Cleaning 
- pkg 
rm -rf pkg 
Building Manifest 
    Manifest 
    README 
    Rakefile 
    bin/buildcss 
    ... 

jim:~/Desktop/spectest \ [git:master] 
→ rake install 
(in /Users/jim/Desktop/spectest) 
Cleaning 
Gemspec generated 
mkdir -p pkg 
mkdir -p pkg/css-reader-0.1.0 
rm -f pkg/css-reader-0.1.0/Manifest 
... 
cd pkg 
tar zcvf css-reader-0.1.0.tar.gz css-reader-0.1.0 
a css-reader-0.1.0 
a css-reader-0.1.0/bin 
... 
cd - 
WARNING: description and summary are identical 
    Successfully built RubyGem 
    Name: css-reader 
    Version: 0.1.0 
    File: css-reader-0.1.0.gem 
mv css-reader-0.1.0.gem pkg/css-reader-0.1.0.gem 
Private key not found; gem will not be signed. 
Targeting "ruby" platform. 
Password: 
Sorry, try again. 
Password: 
ERROR: While executing gem ... (Gem::InstallError) 
    cannot uninstall, check `gem list -d css-reader` 
Successfully installed css-reader-0.1.0 
1 gem installed 
Installing ri documentation for css-reader-0.1.0... 
Updating class cache with 3288 classes... 
Installing RDoc documentation for css-reader-0.1.0... 

Ok - donc je n'étais pas certain pourquoi je suis le Gem :: InstallError ici. Y a-t-il un journal de ruby ​​gems garde que je peux trouver plus de détails concernant l'erreur? De toute façon, j'ai essayé d'essayer d'installer le paquet .gem directement:

gem install pkg/css-reader-0.1.0.gem 
ERROR: While executing gem ... (Errno::EACCES) 
    Permission denied - /Users/jim/.rvm/gems/ruby-1.9.2-preview1/gems/css-reader-0.1.0/Manifest 

Et je reçois un peu plus de commentaires. Cette fois, cela ressemble à une erreur d'autorisation avec le fichier manifeste. J'ai donc essayé de chmod 777 le fichier manifeste et de répéter le processus encore une fois mais je continue à obtenir l'erreur. On dirait une erreur de novice quelque part en mon nom. Tout conseil est apprécié!

Répondre

30

Il est possible qu'à un certain moment, vous ayez déjà exécuté un programme avec sudo qui a gâché vos autorisations. Avez-vous essayé chown -R jim ~/.rvm

+0

Merci - qui semble avoir résolu! –

+0

Merci beaucoup! – Vicer

+0

m'a complètement aidé! Merci! – Abel

0

à droite. résolu un problème similaire. J'ai eu le répertoire ~/.gem verrouillé pour une raison quelconque tout en commutant entre sudo et tel. Merci!

2

je résolu le problème de changer les permissions ~/.gem de:

sudo chown user ~/.gem -R