ruby 如何设置捆绑安装的目标路径?

zynd9foi  于 2023-03-08  发布在  Ruby
关注(0)|答案(2)|浏览(131)

在我的home box上,bundle install命令询问我的密码并将gem安装到

/var/lib/gems/1.8/gems/...

但是在我的办公室计算机上,它们安装在~/.bundler/cache/git中(或者至少缓存在那里),而不是安装在主文件系统中。
我不知道如何设置安装路径,请帮助!

icnyk63a

icnyk63a1#

可以使用以下命令指定gem的安装位置

bundle install --path [directory]

这通常是不必要的;你通常可以只做'捆绑安装',你很好去。
当您希望在部署中包含gem时,您将需要使用

bundle package

默认情况下,它会将gem放在**./vendor/cache**中。

bundle install --deployment

Bundler将从该目录获取文件并将其安装到**./vendor/bundle**中。

bundle help install

希望这个有用。

dfddblmv

dfddblmv2#

正如Mohamed Hakki所指出的,另一个答案现在已经弃用
现在可以使用以下命令设置Bundler的目标路径:

bundle config set --local path vendor/bundle

这里我们指定路径vendor/bundle(根据我的经验,这似乎是最常见和“标准”的路径),但是您可以指定任何想要的路径(包括~/.bundler)。
此命令实际上在工作目录.bundle/config中创建了一个文件,其内容为:

---
BUNDLE_PATH: "vendor/bundle"

当然,我们使用vendor/bundle作为示例,但是BUNDLE_PATH将是您在命令调用中指定的路径。
一旦这个文件位于您的工作目录中,从同一个工作目录调用Bundler的所有操作都将使用您指定的路径。

相关问题