第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

為什么Ruby 1.9.2從LOAD_PATH中刪除“。”,還有什么替代方案?

為什么Ruby 1.9.2從LOAD_PATH中刪除“。”,還有什么替代方案?

蕪湖不蕪 2019-07-25 18:55:00
為什么Ruby 1.9.2從LOAD_PATH中刪除“?!?,還有什么替代方案?Ruby 1.9.2的最新變更集不再使當(dāng)前目錄.成為您的目錄LOAD_PATH。我有一些非常重要的Rakefiles假設(shè)它.是其中的一部分LOAD_PATH,所以這打破了它們(他們報(bào)告“沒有這樣的文件加載”所有基于項(xiàng)目路徑的require語句)。這樣做有什么特別的理由嗎?至于一個(gè)修復(fù),添加$: << "."到處都有效,但看起來非常hacky,我不想這樣做。使Rakefiles 1.9.2+兼容的首選方法是什么?
查看完整描述

3 回答

?
達(dá)令說

TA貢獻(xiàn)1821條經(jīng)驗(yàn) 獲得超6個(gè)贊

這被視為“安全”風(fēng)險(xiǎn)。

您可以使用絕對(duì)路徑繞過它

File.expand_path(__FILE__) et al

或做

require './filename' (ironically).

或者通過使用

require_relative 'filename'

或添加“包含”目錄

ruby -I . ...

或者相同,使用irb;

$irb -I .


查看完整回答
反對(duì) 回復(fù) 2019-07-25
?
紅糖糍粑

TA貢獻(xiàn)1815條經(jīng)驗(yàn) 獲得超6個(gè)贊

正如其他人的回答指出的那樣,這是一個(gè)安全風(fēng)險(xiǎn),因?yàn)?code>.在您的加載路徑中引用了當(dāng)前的工作目錄Dir.pwd,而不是當(dāng)前正在加載的文件的目錄。因此,無論誰執(zhí)行您的腳本,只需通過cd另一個(gè)目錄即可更改。不好!

我一直在使用構(gòu)建的完整路徑__FILE__作為替代方案。

require File.expand_path(File.join(File.dirname(__FILE__), 'filename'))

require_relative此不同,這與Ruby 1.8.7向后兼容。


查看完整回答
反對(duì) 回復(fù) 2019-07-25
  • 3 回答
  • 0 關(guān)注
  • 700 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)