Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails Rails:程序';轨道';当前未安装在Ubuntu 16.04上_Ruby On Rails_Ruby_Ubuntu - Fatal编程技术网

Ruby on rails Rails:程序';轨道';当前未安装在Ubuntu 16.04上

Ruby on rails Rails:程序';轨道';当前未安装在Ubuntu 16.04上,ruby-on-rails,ruby,ubuntu,Ruby On Rails,Ruby,Ubuntu,我安装了rvmruby和gem。 当我使用gem安装rails时,是这样的: woyuxuxu123@ubuntu:~$ sudo gem install rails [sudo] password for woyuxuxu123: Successfully installed rails-5.1.4 Parsing documentation for rails-5.1.4 Done installing documentation for rails after 0 seconds 1 g

我安装了rvmruby和gem。 当我使用gem安装rails时,是这样的:

woyuxuxu123@ubuntu:~$ sudo gem install rails
[sudo] password for woyuxuxu123: 
Successfully installed rails-5.1.4
Parsing documentation for rails-5.1.4
Done installing documentation for rails after 0 seconds
1 gem installed
但当我进入rails-v时,我得到:

woyuxuxu123@ubuntu:~$ rails -v
The program 'rails' is currently not installed. You can install it by typing:
sudo apt install ruby-railties
我尝试了一些解决方案,但对我无效,例如

source ~/.rvm/scripts/rvm
有人提到了这条路。这是它的样子

RubyGems Environment:
EXECUTABLE DIRECTORY: /usr/local/bin

woyuxuxu123@ubuntu:~$ echo $PATH
/home/woyuxuxu123/bin:/home/woyuxuxu123/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/home/woyuxuxu123/.rvm/bin:/home/woyuxuxu123/.rvm/bin

我该怎么办?

您可能忘了将rvm脚本添加到.bash\u配置文件中:

[-s“$HOME/.rvm/scripts/rvm”]&&source“$HOME/.rvm/scripts/rvm”


尝试运行
rvm“修复所有”
,然后重新启动您的终端。

我在Rails 5.2和Ubuntu 18.04上遇到了类似的问题。我已经安装了Ruby和Rails的服务器,但是我无法访问它们

错误输出为:

“rails”程序当前未安装。您可以通过键入以下内容进行安装: sudo-apt安装ruby-railties

这个问题只是由于rails可执行文件不能被程序全局访问而引起的

以下是我解决问题的方法

注意:如果您使用的是生产服务器,请在尝试下面的解决方案之前尝试备份数据库,以避免数据丢失

就我而言,我的版本管理器是rbenv,而不是rvm

重新安装rbenv本身。将rbenv存储库从GitHub克隆到~/.rbenv目录中:

git克隆https://github.com/rbenv/rbenv.git ~/.rbenv

接下来,将
~/.rbenv/bin
添加到
$PATH
中,以便可以使用rbenv命令行实用程序。为此,请更改~/.bashrc文件,使其影响将来的登录会话:

echo'export PATH=“$HOME/.rbenv/bin:$PATH”>>~/.bashrc

然后将命令eval“$(rbenv init-”添加到~/.bashrc文件中,以便rbenv自动加载:

echo'eval“$(rbenv init-”>~/.bashrc

接下来,将对~/.bashrc文件所做的更改应用于当前shell会话:

source~/.bashrc

使用type命令验证是否正确设置了rbenv,该命令将显示有关rbenv命令的更多信息:

键入rbenv

终端窗口将显示以下内容:

rbenv is a function
rbenv ()
{
    local command;
    command="${1:-}";
    if [ "$#" -gt 0 ]; then
        shift;
    fi;
    case "$command" in
        rehash | shell)
            eval "$(rbenv "sh-$command" "$@")"
        ;;
        *)
            command rbenv "$command" "$@"
        ;;
    esac
}
如果一切正常,运行下面的命令将显示以前安装在您机器上的RubyRails版本:

ruby -v
rails -v
否则,请在您的计算机上重新安装RubyRails

就这些


我希望这有帮助

请有人帮忙。非常紧急!你有没有在没有sudo的情况下尝试
gem安装rails
?@djothefu我尝试过,但得到了一个“你没有/var/lib/gems/2.3.0目录的写入权限”。不要使用sudo!!您需要重新启动终端,关闭并打开它again@MrYoshiji它说如果没有sudoa,我就没有写权限。实际上,我的.bash_配置文件中有这一行。我尝试了rvm“全部修复”并重新启动了我的终端,但它不起作用。@XINDILI在安装rails gem之前是否运行了
rvm use--default
?终端中哪个gem命令的输出是什么?我重新安装了所有程序并运行了rvm use--default。现在它起作用了。非常感谢您,但我运行bash--login以运行rvm use。所以现在每次打开控制台,我都必须运行bash--login。然后我可以使用rails。那是个好主意problem@XINDILI您需要使用“-login”选项以交互方式运行shell。尝试将
[[-s“$HOME/.rvm/scripts/rvm”]]和&source“$HOME/.rvm/scripts/rvm”
添加到.bashrc或.profile而不是.bash\u profile。