我正在尝试Jekyll运行,但我没有使用Ruby的经验
据我所知,Jekyll的安装成功了。
但是:
$ jekyll
给出错误:
-bash: jekyll: command not found
这是gem env
结果:
- RUBYGEMS VERSION: 1.3.4
- RUBY VERSION: 1.8.7 (2010-01-10 patchlevel 249) [universal-darwin10.0]
- INSTALLATION DIRECTORY: /Volumes/HDD/DADU/gems
- RUBY EXECUTABLE: /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby
- EXECUTABLE DIRECTORY: /Volumes/HDD/DADU/gems/bin
- RUBYGEMS PLATFORMS:
- ruby
- universal-darwin-10
- GEM PATHS:
- /Volumes/HDD/DADU/gems
- /Volumes/HDD/DADU/.gem/ruby/1.8
- /Library/Ruby/Gems/1.8
- /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/gems/1.8
- GEM CONFIGURATION:
- :update_sources => true
- :verbose => true
- :benchmark => false
- :backtrace => false
- :bulk_threshold => 1000
- REMOTE SOURCES:
- http://gems.rubyforge.org/
我发现以下路径导致了“某事”杰基尔:
~.gem/ruby/1.8/gems/jekyll-0.11.0/lib/jekyll.rb
~.gem/ruby/1.8/gems/bin/jekyll
(exec文件)答案 0 :(得分:16)
对于其他来这里设置的人来说:
OS X + brew ed 安装ruby +(可能) zsh
我认为问题在于按照their instructions安装 jekyll 之后,gem会在 brew 酒窖中安装jekyll gem,而不是操作系统通常预期的地方它(有些东西在ruby的gem目录中)。
所以,这里需要的只是找出ruby的 brew 安装位置安装gems,找到jekyll二进制文件,并在/usr/bin
中创建一个符号链接。< / p>
以下是我修复它的步骤:
输入gem env
并查找 GEM PATHS 。对我来说是:
/usr/local/Cellar/ruby/1.9.3-p194/lib/ruby/gems/1.9.1
。
确保您可以在上面的 1 目录中看到jekyll
二进制文件并复制其路径(如果不能,请搜索 GEM路径为它)。对我来说是:
/usr/local/Cellar/ruby/1.9.3-p194/lib/ruby/gems/1.9.1/gems/jekyll-1.4.3/bin/jekyll
使用上面步骤 2 的路径创建符号链接到/usr/bin/jekyll
。我是通过输入(您可能需要sudo
来创建符号链接)来完成的:
cd /usr/bin && ln -s /usr/local/Cellar/ruby/1.9.3-p194/lib/ruby/gems/1.9.1/gems/jekyll-1.4.3/bin/jekyll jekyll
如果您输入jekyll
,现在一切都应该是快乐的。
答案 1 :(得分:13)
最简单的方法是使用RVM。它为您管理Ruby及其所有宝石,并且易于使用。有关使用它,请参阅此link。
如果您不想使用它,则需要修改PATH变量,以便找到您的宝石。我发现这很乏味并且还原到RVM,但这里是一般步骤。
您需要了解宝石的安装位置。如果您gem install ...
宝石将在~/.gem/ruby/1.8/gems/bin
,那么如果您使用sudo gem install ...
宝石将位于/System/Library/Frameworks/Ruby.framework/Versions/1.8/Resources
您必须将此路径添加到PATH变量中。最简单的方法是运行:
echo 'PATH=$PATH:above/path/to/gems' >> ~/.bash_profile
答案 2 :(得分:12)
如果您使用的是RBENV而不是RVM,则只需在安装jekyll后在命令行中运行rehash
:
rbenv rehash
答案 3 :(得分:11)
如果您使用的是MacOS,请从Troubleshooting guide:
Jekyll和Mac OS X 10.11固定链接
随着系统完整性保护的引入,以前可写的几个目录现在被视为系统位置,并且不再可用。考虑到这些变化,有两种简单的方法可以启动和运行。一种选择是更改gem的安装位置(同样,仅在必要时使用sudo):
$ gem install -n /usr/local/bin jekyll
答案 4 :(得分:7)
也许有点晚了,但......
我在Ubuntu上安装Jekyll时遇到了一些麻烦,并尝试了人们在这个帖子中回答的一切 - 遗憾的是没有任何效果。
然后,我在Jekyll的网站上观看了一段视频,在再次安装整个ruby包后,Node
工作了。
先尝试一下:
sudo gem install jekyll
看起来很简单,但它适用于Ubuntu。
答案 5 :(得分:6)
一种解决方案是编辑~/.bashrc
文件并添加以下行:
PATH=$PATH:~/.gem/ruby/1.8/gems/bin
这将在Bash的查找路径中添加~/.gem/ruby/1.8/gems/bin
。
重新打开终端,它应该可以工作。或者您可以使用以下命令:
. ~/.bashrc
答案 6 :(得分:2)
gem uninstall jekyll
sudo gem install jekyll
打开〜/ .bash_profile并在最后一行添加此代码
export PATH=$PATH:/usr/local/lib/ruby/gems/1.9.1/gems/jekyll-2.5.2/bin
保存并关闭.bash_profile
关闭并重新打开mac终端,现在尝试运行jekyll
,它应该可以正常工作
答案 7 :(得分:1)
Jekyll是一个红宝石的宝石:例如,linux中的Ruby宝石在/var/lib/gems/1.8中,可以在&#34; ruby env&#34;中找到。输出。
因此,您需要将此目录中的可执行文件添加到路径中。
一般来说,如果没有找到红宝石的宝石,那么#34;通过您的操作系统,它只是表明
1)您没有安装宝石或
2)您没有将gem安装在路径上的目录中。
我发现在linux上安装ruby和ruby gems存在一些问题(我发现在Ubuntu v10上它可能很棘手,并且已经在IRC上的Ruby人员中证实了这一点)。因此,像RVM或rbenv这样的工具可能是建立稳定,可维护的ruby环境的最佳方法。
答案 8 :(得分:1)
@ jayunit100,
我与Jekyll博客遇到了同样的问题。我已经通过RVM在'博客目录中安装了gem,而_config.yml文件说它应生成Blog / _site。是否像向PATH添加Blog一样简单,还是我还缺少其他东西?
更新:我的不好,我没有安装宝石。获得的经验:rvm requirements
和brew doctor
是有原因的 - 在你安装之前使用他们
答案 9 :(得分:1)
比创建符号链接更容易,只需正确安装即可。 如果您在尝试使用
时获得了很多人的许可错误$rowNumber = 1;
while (($row = oci_fetch_array($result, OCI_BOTH)) != false){
$columna = 'A';
foreach ($row as $key => $valor) {
$objPHPExcel->getActiveSheet()->setCellValue($columna . $rowNumber, $valor);
$columna++;
}
$rowNumber++;
}
改为使用
gem install jekyll
答案 10 :(得分:1)
我在MacOS 10.14上通过brew安装了ruby2.6.0
和gem
。
对我来说,将以下行添加到我的~/.zshrc
已解决的问题中。
export PATH=/usr/local/lib/ruby/gems/2.6.0/bin:$PATH
我用命令locate jekyll
找到了jekyll可执行文件。
答案 11 :(得分:0)
在我的情况下,我必须运行bundle install --force
然后bundle exec jekyll serve
有效,但jekyll serve
仍然没有。从现在开始,我似乎不得不与前者一起......
答案 12 :(得分:0)
使用--user-install选项时,RubyGems会将gems安装到主目录中的某个目录中,例如〜/ .gem / ruby / 1.9.1。您安装的gems提供的命令将以〜/ .gem / ruby / 1.9.1 / bin结尾。为了使安装的程序可供您使用,您需要在PATH环境变量中添加〜/ .gem / ruby / 1.9.1 / bin。
例如,如果您使用bash,则可以通过将以下代码添加到〜/ .bashrc文件中来将该目录添加到PATH中:
if which ruby >/dev/null && which gem >/dev/null; then
PATH="$(ruby -r rubygems -e 'puts Gem.user_dir')/bin:$PATH"
fi
https://guides.rubygems.org/faqs/#user-install
我将其放在.bash_profile(Mac OS X)中。
https://hathaway.cc/2008/06/how-to-edit-your-path-environment-variables-on-mac/
答案 13 :(得分:0)
对我来说,我遵循的是安装guide,而不是其主页的安装说明。在我更改了bash_profile
文件并重新启动了Terminal之后,它起作用了。
答案 14 :(得分:0)
以下是2020年(2021年很快)的最新答案。要安装任何Ruby gem,无论是Jekyll,Bundler,Rails等,都需要在Mac上使用合适的Ruby开发环境。正如我在definitive guide to installing Ruby gems on a Mac中详细介绍的那样,有多种方法可以在Mac上安装Ruby。我推荐的唯一一个方法是使用Ruby管理器,因为它是最灵活的,可以使您长期成功。我最喜欢的是chruby,因为它最轻巧,最容易使用。在安装Ruby的过程中,您还需要正确配置Shell启动文件(通常为~/.zshrc
或~/.bash_profile
),以便它知道在哪里可以找到要安装的gem。否则,您将收到“ command not found”错误,我也已经写过。
由于在Mac上设置可正常工作的Ruby开发环境涉及多个步骤,因此我编写了一些脚本来自动化整个过程,并使人们更轻松,更快捷地进行操作。您可以在上述指南中阅读有关脚本的更多信息。