无法在本地

时间:2017-09-17 00:30:16

标签: ruby-on-rails ruby

请参阅随附的屏幕截图。我无法在本地创建Rails应用程序。以前发过类似的查询 https://stackoverflow.com/questions/44510632/bundle-install-unable-to-execute-usr-local-bin-bundle-no-such-file-or-directo

仍然没有找到任何有用的解决方案 enter image description here

依赖关系tzinfo-data(> = 0)将被Bundler正在安装的任何平台使用。 Bundler正在为ruby安装,但依赖性仅适用于x86-mingw32,x86-mswin32,x64-mingw32,java。要将这些平台添加到捆绑包,请运行bundle lock --add-platform x86-mingw32 x86-mswin32 x64-mingw32 java。 尝试写入时出错 /home/vishnu/.bundle/cache/compact_index/rubygems.org.443.29b0360b937aa4d161703e6160654e47/versions。您可能需要授予写入权限 该路径的权限。          运行bundle exec spring binstub --all bundler:命令未找到:spring 使用bundle install安装缺少的gem可执行文件 vishnu @ vishnu-Inspiron-3543:〜$ bundle install 无法找到Gemfile vishnu @ vishnu-Inspiron-3543:〜$ bundle exec spring binstub --all 找不到Gemfile或.bundle /目录

2 个答案:

答案 0 :(得分:1)

这里有多个错误。让我们逐一探索它们。

  1. There was an error while trying to write to /home/vishnu/.bundle/cache/compact_index/rubygems.org.443.29b0360b937aa4d161703e6160654e47/versions. It is likely that you need to grant write permissions for that path. run bundle exec spring binstub --all bundler: command not found: spring Install missing gem executables with bundle install
  2. 正如错误清楚地说明的那样,您需要向/home/vishnu/.bundle/cache/compact_index/rubygems.org.443.29b0360b937aa4d161703e6160654e47/versions目录授予写入权限。你能检查一下/home/vishnu/目录的权限吗?您可以通过发出命令进行检查 ls -l /home/vishnu

    1. vishnu@vishnu-Inspiron-3543:~$ bundle install Could not locate Gemfile
    2. 您需要导航到Rails创建的项目目录,然后发出bundle命令。在发出Gemfile之前,请确保该目录中存在bundle install

      1. vishnu@vishnu-Inspiron-3543:~$ bundle exec spring binstub --all Could not locate Gemfile or .bundle/ directory
      2. 与上述相同。

        请按照上述问题排查步骤告诉我们这是否可以解决问题。

答案 1 :(得分:1)

sudo chown $(whoami):$(whoami) ~/.bundle/cache/compact_index/rubygems.org.443.29b0360b937aa4d161703e6160654e47/versions

这为我解决了这个问题。

编辑: 在大多数Unix风格的操作系统中,whoami命令会打印当前登录用户的用户名。

您收到的错误的详细信息:

  

尝试写入/home/vishnu/.bundle/cache/compact_index/rubygems.org.443.29b0360b937aa4d161703e6160654e47/versions时出现错误。您可能需要授予该路径的写权限。

为了授予该路径的写权限,您可以将所有者更改为您的用户。 chown更改了每个给定文件的用户和/或组所有权。

正如某人在评论中所说,粘贴的命令将更改给定文件的所有者AND组。

注意:您可能不需要更新组。只需将所有者更改为您的用户就足够了,但这就是我解决此错误的方法。

冒号前面提供的参数定义要分配给所有者的用户。冒号后面提供的参数表示组。

在您的情况下,所有者设置为vivek(假设这是当前登录的用户)。

希望获得帮助!