在我的家庭包装盒上,bundle install命令确实要求输入密码并在其中安装宝石
/var/lib/gems/1.8/gems / ...
但在办公室中,它们安装在我的〜/ .bundler / cache / git中,或至少缓存在这里,而未安装在主文件系统中
我不知道如何设置它们的安装路径。请帮助!
小智 9
正如Mohamed Hakki指出的那样,另一个答案现已被弃用。
\n您现在可以使用以下命令设置 Bundler 的目标路径:
\nbundle config set --local path vendor/bundle\nRun Code Online (Sandbox Code Playgroud)\n这里我们指定路径vendor/bundle(根据我的经验,这似乎是最常见的 \xe2\x80\x9cstandard\xe2\x80\x9d 路径),但您可以指定您想要的任何路径(包括~/.bundler)。
该命令实际上在您的工作目录中创建一个文件,.bundle/config其内容为:
---\nBUNDLE_PATH: "vendor/bundle"\nRun Code Online (Sandbox Code Playgroud)\n当然,我们使用vendor/bundle作为示例,但BUNDLE_PATH将是您在命令调用中指定为路径的任何内容。
一旦此文件位于您的工作目录中,来自同一工作目录的所有 Bundler 调用都将使用您指定的路径。
\n您可以通过使用指定gem的安装位置
bundle install --path [directory]
Run Code Online (Sandbox Code Playgroud)
通常这不是必需的。您通常可以进行“捆绑安装”,您就可以开始了。
当您要包括要部署的gem时,您将需要使用
bundle package
Run Code Online (Sandbox Code Playgroud)
默认情况下,它将把您的宝石放在./vendor/cache中。如果您随后部署项目并执行
bundle install --deployment
Run Code Online (Sandbox Code Playgroud)
Bundler将从该目录中获取文件并将其安装到./vendor/bundle中。通过执行以下操作可获得更多信息
bundle help install
Run Code Online (Sandbox Code Playgroud)
希望这是有用的。