2
|
Sniggerfardimungus · 技术社区 · 16 年前 |
![]() |
1
3
我认为您需要的是将文件扩展名与Ruby相关联。我想不可能得到!#在Windows上工作的符号,但是可以让Windows使用特定的解释器自动启动脚本(如第二个示例中所示)。一步一步地讨论你想做的是 here. 您特别需要标题为“为未关联的文件类型创建文件关联”的部分。我认为这将完成你想做的。 |
![]() |
2
2
适用于Ruby1.8.6.pxxx和1.9.1.p0的通用解决方案 Windows如下: 编辑文件:c:\ruby\lib\ruby\1.9.1\webrick\httpservlet\cgi_runner.rb 在文件顶部添加以下行: if "1.9.1" == RUBY_VERSION require 'rbconfig' #constants telling where Ruby runs from end 现在,找到最后一行:exec env[“script_filename”] 注释该行并添加以下代码: # --- from here --- if "1.9.1" == RUBY_VERSION #use RbConfig Ruby = File::join(RbConfig::CONFIG['bindir'], RbConfig::CONFIG['ruby_install_name']) Ruby << RbConfig::CONFIG['EXEEXT'] else # use ::Config Ruby = File::join(::Config::CONFIG['bindir'], ::Config::CONFIG['ruby_install_name']) Ruby << ::Config::CONFIG['EXEEXT'] end if /mswin|bccwin|mingw/ =~ RUBY_PLATFORM exec "#{Ruby}", ENV["SCRIPT_FILENAME"] else exec ENV["SCRIPT_FILENAME"] end # --- to here --- 保存文件并重新启动Webrick服务器。 说明: 此代码只是构建一个变量“ruby”,其中包含 “Ruby exe”,以及 (如果在Windows上运行)它将传递附加参数 “c:\ruby\bin\ruby.exe”,到kernel.exe c()方法,以便 可以执行脚本。 |
![]() |
3
0
不是真的要争论…但是,当Mongrel速度更快并且使用Windows进行本地编译时,为什么还要麻烦Webrick呢?对于coz,这意味着不需要shebang。 |
![]() |
4
0
实际上,可以让Windows识别脚本文件中的shebang符号。它可以用一个相对较短的脚本来完成,比如ruby或autoit。脚本文件的第一行只需要一个相当简单的解析器,以及一些文件操作。当需要脚本文件的交叉兼容性,或者当Windows文件扩展名不够时,我已经这样做了几次。 |
![]() |
cluster1 · 采取独立的新行动的好处是什么? 6 月前 |
![]() |
Robert · 使用JSON或哈希时,将NULL替换为NIL 6 月前 |
![]() |
lucycoco · 如何解决pod安装问题并成功运行pod安装? 10 月前 |
![]() |
Vessel · Ruby-包含任意数量元素的所有排列 10 月前 |