除了在Rails中使用Webrick之外,如何使用其他Webrick(不是当前Ruby的版本)
我试图在本地机器上使用Webrick作为一个简单的web服务器。但是,我不想使用Ruby 2.6中包含的Webrick,而是希望使用它之外的一个副本。我正在使用bundler,这是我的文件:除了在Rails中使用Webrick之外,如何使用其他Webrick(不是当前Ruby的版本),ruby,bundler,Ruby,Bundler,我试图在本地机器上使用Webrick作为一个简单的web服务器。但是,我不想使用Ruby 2.6中包含的Webrick,而是希望使用它之外的一个副本。我正在使用bundler,这是我的文件: gem 'webrick', path: '/Users/jht/jht-webrick/webrick' 当我进行捆绑信息webrick时,我得到: * webrick (1.6.0) Summary: HTTP server toolkit Homepage: https://ww
gem 'webrick', path: '/Users/jht/jht-webrick/webrick'
当我进行捆绑信息webrick
时,我得到:
* webrick (1.6.0)
Summary: HTTP server toolkit
Homepage: https://www.ruby-lang.org
Path: /Users/jht/jht-webrick/webrick
然而,当我启动它时,它使用了附带的ruby 2.6 webrick。如何使其使用GEM文件中指定的webrick
我正在使用这个脚本(您可以看到我在哪里尝试更新加载路径并直接加载源):
要使捆绑解决依赖关系,我认为您需要添加以下设置:
需要“绑定器”
Bundler.setup
在ruby脚本文件的顶部使用bundler强制执行rubygems版本时,您需要在bundler的上下文中运行 这可以通过两种方式完成:
需要“绑定器”
Bundler.setup
bundle exec ruby src/main.rb
您可以尝试使用“bundle exec”作为服务器命令的前缀。
# $LOAD_PATH.unshift('../webrick/')
# puts "load path: #{$LOAD_PATH}"
# load '../webrick/lib/webrick.rb'
require 'webrick'
root = File.expand_path './public_html'
server = WEBrick::HTTPServer.new :Port => 8000, :DocumentRoot => root
trap 'INT' do server.shutdown end
server.start