本以為經(jīng)過起步ror時(shí)裝環(huán)境的經(jīng)驗(yàn)柴淘,安裝ror環(huán)境只是時(shí)間問題了关斜,才發(fā)現(xiàn)自己高估自己了示括,在環(huán)境出錯(cuò)的情況下花了將近1天半時(shí)間才解決問題(離心態(tài)爆炸已經(jīng)不遠(yuǎn)了),記錄下來痢畜。
掉進(jìn)坑里不可怕垛膝,掉進(jìn)同樣的坑里也不可怕,可怕的是掉進(jìn)坑里出不來丁稀。
ror環(huán)境的安裝終歸就幾點(diǎn)(可以參考之前的文檔):
1.rvm的安裝: 不多寫了吼拥,參考https://www.rvm.io/
2.ruby的安裝: 參考https://ruby-china.org/wiki/rvm-guide
3.rails的安裝
4.bundler的安裝
昨天因?yàn)橛龅揭粋€(gè)bug,網(wǎng)上提供一個(gè)解決方案運(yùn)行bundle update线衫,結(jié)果改變了整機(jī)環(huán)境凿可,稀里糊涂的弄了很久,真的心累 還好爬出坑了~
整個(gè)安裝的過程用的是之前自己安裝ror時(shí)記錄的文檔授账,尷尬的是竟然安裝不成功枯跑,一直不能運(yùn)行,后來了解到是bundle update的時(shí)候改變了gemfile.lock文件白热,特意了解了gemfile和gemfile.lock兩個(gè)文件的作用全肮,總結(jié)如下:
- Gemfile這個(gè)文件指定程序需要使用的哪些gem及其版本;
- Gemfile.lock文件是Bundler記錄已經(jīng)安裝了的版本的地方棘捣。通過這樣的方式,當(dāng)相同庫/項(xiàng)目在另外一臺(tái)機(jī)器上部署的時(shí)候,運(yùn)行bundle install將會(huì)查看Gemfile.lock乍恐,然后安裝同樣的版本评疗,而不是使用Gemfile以及安裝最新的版本。(在不同的機(jī)器上運(yùn)行不同版本會(huì)導(dǎo)致測試的失敗……)你不需要直接地更改Gemfile.lock.
所以很容易很輕松的把Gemfile.lock文件回退到之前的版本后再運(yùn)行bundle install命令安裝gems包時(shí)發(fā)現(xiàn)一路順風(fēng)茵烈,結(jié)果等了大半天還是報(bào)錯(cuò)哈哈哈哈
具體錯(cuò)誤是libv8安裝不成功百匆,不過經(jīng)過一天后看到的不是之前那個(gè)錯(cuò)后,心情還是相當(dāng)?shù)募?dòng)呜投,趕緊搜查解決方案加匈,結(jié)果發(fā)現(xiàn)也是坑的一批,如何坑就不贅述了仑荐,最后用的下面的方法解決
libv8安裝:
來自:https://stackoverflow.com/questions/27260199/libv8-3-16-14-3-fails-to-install-rails-4-1-8
關(guān)于libv8的安裝解決方案還有很多雕拼,恰巧這個(gè)解決了我的問題,還有一種思路:
來自:https://ruby-china.org/topics/22331
不過大同小異粘招,能安裝成功就行啥寇,如果想詳細(xì)了解lbv8,可以去https://github.com/cowboyd/libv8洒扎。
吃一塹長一智辑甜,環(huán)境不要輕易手閑改動(dòng),熱愛生命袍冷,遠(yuǎn)離環(huán)境安裝磷醋。