RVM不断向我的PATH添加目录,然后引发警告,提示PATH设置不正确 [英] RVM keeps adding a directory to my PATH and then throws a warning that PATH isn't set up correctly

查看:297
本文介绍了RVM不断向我的PATH添加目录,然后引发警告,提示PATH设置不正确的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我知道还有很多其他问题可以解决这个问题,但是我找不到适合我的解决方案,因此我会发布以防万一。

使用命令行,当我 cd 进入Rails站点目录时,RVM通过添加用户/用户名/ bin添加到PATH变量的前面,然后它会发出有关PATH设置不正确的警告,因为这是因为ruby gems版本不在PATH中的第一位。



在更改为ROR目录之前,这是我的$ PATH输出:

  /Users/username/.rvm/gems/ ruby-2.1.1 / bin:/用户/用户名/.rvm/gems/ruby- 2.1.1@global/bin:/用户/用户名/.rvm/rubies/ruby2.1.1/bin:/用户/用户名/。 nvm / v0.10.18 / bin:/ usr / bin:/ bin:/ usr / sbin:/ sbin:/ usr / local / bin:/ usr / local / munki:/ Users /用户名/.rvm/bin:/Users /username/.rvm/bin 

将目录更改为ROR目录后:

  /用户/用户名/ bin:/用户/用户名/.rvm/gems/ruby-2.1.1@rorproject/bin:/用户/用户名/.rvm/gems/ruby-2.1.1 @ global / bin:/用户/用户名/.rvm/rubys/ruby-2.1.1/bin:/用户/用户名/.rvm/bin:/用户/用户名/.nvm/v0.10.18/bin:/usr/ bin:/ bin:/ usr / sbin:/ sbin:/ usr / local / bin:/ usr / local / munki 

我意识到RVM应该更改PATH变量,但是为什么要在其前面添加 Users / username / bin?



我的.bashrc文件:

  [[-s /Users/username/.nvm/nvm.sh]]&& 。 /Users/username/.nvm/nvm.sh#加载NVM 

export PATH = $ PATH:$ HOME / .rvm / bin#将RVM添加到PATH中以编写脚本

这是我的.profile文件:

  export PATH = $ PATH:$ HOME / .rvm / bin#将RVM添加到PATH中以编写脚本

和.bash_profile文件:

  source〜/ .profile 

如果[- f〜/ .bashrc];然后
源〜/ .bashrc
fi

[[-s $ HOME / .rvm / scripts / rvm]]&&来源 $ HOME / .rvm / scripts / rvm#将RVM加载到Shell会话中*作为一个函数*

我尝试过的事情是:




  • rvm会变得稳定--auto-dotfiles

  • rvm get head --auto-dotfiles

  • rvm use 2.1.1

  • 完全删除RVM并重新安装

  • 删除Rails站点目录并重新克隆从github

  • 重置路径



我已经删除了.profile文件并删除了来源〜/ .profile来自每个7stud的.bash_profile,结果仍然相同(我已经关闭iterm并重新打开了它。)。



.ruby-gemset文件:

  rorproject 

.ruby版本文件:

  2.1.1 

Gemfile

  source'https:// ruby​​gems。 org'
来源'http://rails-assets.org'

gem'rails','〜> 4.0.0'
gem'mysql2'
gem'unicorn-rails'
gem active_model_serializers,〜> 0.8.0
gem'foreman'
gem'sorcery',github:'NoamB / sorcery'
gem'cancan'
gem'date_validator',github:'codegram / date_validator'
gem'oj'#更快的json处理
#gem'oj_mimic_json'#用于带ROR 4.1 +的OJ集成
gem'rails-patch-json-encode'#用于带ROR的OJ集成< 4.1
gem'acts-as-taggable-on'
gem'haml-rails'#由前端应用程序通过grunt使用,并用于PDF生成
gem'will_paginate'
gem'paper_trail','〜> 3.0.1'
宝石'state_machine'

宝石'sprockets-rails'
宝石'sass-rails'
宝石'uglifier'
gem' coffee-rails'

#附件处理
gem'carrierwave'
gem'fog'
gem'mime-types'
gem'aws-sdk '
gem'unf'
gem'mini_magick'

#PDF日历
gem'wkhtmltopdf-binary'
gem'wicked_pdf'

#Excel输出
gem'axlsx_rails'

#例外报告
gem sentry-raven

#软删除
宝石'偏执狂','〜> 2.0’

group:doc do
#bundle exec rake doc:rails在doc / api下生成API。
gem'sdoc',要求:false
end

#使用调试器
group:development,:test do
gem'debugger'
gem'rspec-rails','〜> 2.0
宝石 spork-rails,:github => 'sporkrb / spork-rails'

gem'guard'
gem'guard-bundler'
gem'guard-rspec'
gem'guard-spork'
gem'guard-process'
gem'guard-migrate',:github => glanotte / guard-migrate

宝石 quiet_assets
宝石 factory_girl_rails,:require => false
gem'faker'
end

group:development do
gem'factory_girl_rails'#在dev中执行需求,以便rails生成器可以使工厂
end

组:测试
gem'database_cleaner'

gem'simplecov',:require =>假
宝石 simplecov-rcov,:require => false
end

我没有.rvmrc文件也没有.versions.conf文件。



我完全茫然,不胜感激。

解决方案


  1. 摆脱掉.profile文件。


  2. 删除.bash_profile中的行: source〜/ .profile


如果这样做没有帮助,请将Gemfile和.rvmrc文件发布到项目的目录(如果有)和/或.ruby-version,.ruby-gemset,.versions.conf。



回复评论:



I会尝试删除您的两个文件:.ruby-gemset和.ruby-version,然后在您的Gemfile中使用以下行:

  ruby '2.1.1'
#ruby-gemset = rorproject

他们确实应该做同样的事情东西,但让我们看看。


I know there's a lot of other questions out there addressing this issue, but I haven't been able to find anything solution that works for me, so I'm posting in case I've missed something.

Using the command-line, when I cd into a Rails site directory, RVM changes my path by adding "Users/username/bin" to the front of the PATH variable and then it throws a warning about how PATH is not set up correctly because because the ruby gems version isn't in first place in PATH.

Here's my $PATH output prior to changing into a ROR directory:

/Users/username/.rvm/gems/ruby-2.1.1/bin:/Users/username/.rvm/gems/ruby- 2.1.1@global/bin:/Users/username/.rvm/rubies/ruby2.1.1/bin:/Users/username/.nvm/v0.10.18/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/munki:/Users/username/.rvm/bin:/Users/username/.rvm/bin

And after changing the directory into a ROR directory:

/Users/username/bin:/Users/username/.rvm/gems/ruby-2.1.1@rorproject/bin:/Users/username/.rvm/gems/ruby-2.1.1@global/bin:/Users/username/.rvm/rubies/ruby-2.1.1/bin:/Users/username/.rvm/bin:/Users/username/.nvm/v0.10.18/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/munki

I realize that RVM is supposed to change the PATH variable, but why is it adding the "Users/username/bin" to the front?

Here's my .bashrc file:

[[ -s /Users/username/.nvm/nvm.sh ]] && . /Users/username/.nvm/nvm.sh # This loads NVM

export PATH="$PATH:$HOME/.rvm/bin" # Add RVM to PATH for scripting

Here's my .profile file:

export PATH="$PATH:$HOME/.rvm/bin" # Add RVM to PATH for scripting

And .bash_profile file:

source ~/.profile

if [ -f ~/.bashrc ]; then
  source ~/.bashrc
fi

[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm" # Load RVM into a shell session *as a function*

Things I've tried are:

  • rvm get stable --auto-dotfiles
  • rvm get head --auto-dotfiles
  • rvm use 2.1.1
  • removing RVM completely and reinstalling
  • removing the Rails site directory and re-cloning from github
  • resetting PATH

I've deleted my .profile file and removed the "source ~/.profile" from .bash_profile per 7stud and still the same result (I've closed down iterm and reopened it as well).

.ruby-gemset file:

rorproject

.ruby-version file:

2.1.1

Gemfile

source 'https://rubygems.org'
source 'http://rails-assets.org'

gem 'rails', '~> 4.0.0'
gem 'mysql2'
gem 'unicorn-rails'
gem "active_model_serializers", "~> 0.8.0"
gem 'foreman'
gem 'sorcery', github: 'NoamB/sorcery'
gem 'cancan'
gem 'date_validator', github: 'codegram/date_validator'
gem 'oj'                  # faster json handling
#gem 'oj_mimic_json'       # for OJ integration w/ ROR 4.1+
gem 'rails-patch-json-encode' # for OJ integration w/ ROR < 4.1
gem 'acts-as-taggable-on'
gem 'haml-rails'          # Used by the frontend app, via grunt, and for PDF generation
gem 'will_paginate'
gem 'paper_trail', '~> 3.0.1'
gem 'state_machine'

gem 'sprockets-rails'
gem 'sass-rails'
gem 'uglifier'
gem 'coffee-rails'

# Attachment handling
gem 'carrierwave'
gem 'fog'
gem 'mime-types'
gem 'aws-sdk'
gem 'unf'
gem 'mini_magick'

# PDF Calendars
gem 'wkhtmltopdf-binary'
gem 'wicked_pdf'

# Excel output
gem 'axlsx_rails'

# Exception reporting
gem "sentry-raven"

# Soft deletes
gem 'paranoia', '~> 2.0'

group :doc do
  # bundle exec rake doc:rails generates the API under doc/api.
  gem 'sdoc', require: false
end

# Use debugger
group :development, :test do
  gem 'debugger'
  gem 'rspec-rails', '~> 2.0'
  gem 'spork-rails', :github => 'sporkrb/spork-rails'

  gem 'guard'
  gem 'guard-bundler'
  gem 'guard-rspec'
  gem 'guard-spork'
  gem 'guard-process'
  gem 'guard-migrate', :github => 'glanotte/guard-migrate'

  gem 'quiet_assets'
  gem 'factory_girl_rails', :require => false
  gem 'faker'
end

group :development do
  gem 'factory_girl_rails'  # Do the require in dev, so rails generators can make factories
end

group :test do
  gem 'database_cleaner'

  gem 'simplecov',      :require => false
  gem 'simplecov-rcov', :require => false
end

I do not have an .rvmrc file nor a .versions.conf file.

I'm at a complete loss and any help would be appreciated. Thanks in advance.

解决方案

  1. Get rid of your .profile file. Delete it.

  2. Delete the line in .bash_profile: source ~/.profile

If that doesn't help, please post your Gemfile and the .rvmrc file in your project's directory(if present) and/or .ruby-version, .ruby-gemset, .versions.conf.

Response to comment:

I would try deleting your two files: .ruby-gemset and .ruby-version, then in your Gemfile use these lines:

ruby '2.1.1'
#ruby-gemset=rorproject

They really should do the same thing, but let's see.

这篇关于RVM不断向我的PATH添加目录,然后引发警告,提示PATH设置不正确的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆