2016-02-19 48 views
0

我一直在嘗試手動將Ruby腳本加載到SketchUp中,使用加載。我總是得到一個錯誤,說這個文件不存在,即使它在目錄中。在SketchUp中加載Ruby腳本:LoadError:(eval):0:在`load'中:沒有要加載的文件

這裏是我的代碼示例:
load "H:Document\sclf_color_by_z_1.6.1_1.rbz"

和錯誤信息:這裏

Error: LoadError: (eval):0:in `load': no such file to load -- H:Document clf_color_by_z_1.6.1_1.rbz>
(eval)
(eval):0

回答

0

三個問題:

  1. H:Document\sclf_color_by_z_1.6.1_1.rbz是不是一個有效的路徑。後驅符H:你,你應該有一個分隔符:\ - 像這樣:H:\Document\sclf_color_by_z_1.6.1_1.rbz

  2. 當心轉義字符在字符串中,當你編程。 \就是這樣一個角色。 要糾正你的字符串你必須有這樣的事情: "H:\\Document\\sclf_color_by_z_1.6.1_1.rbz" https://en.wikibooks.org/wiki/Ruby_Programming/Strings#Escape_sequences 但是請注意,Ruby的約定是使用正斜槓 - 甚至在Windows上:"H:/Document/clf_color_by_z_1.6.1_1.rbz"

  3. 您正在試圖加載RBZ文件在這裏。這是而不是與RB文件相同。 RBZ是一個打包的SketchUp擴展(實際上是一個ZIP文件)。要以編程方式安裝的RBZ必須使用Sketchup.install_from_archive("H:/Document/clf_color_by_z_1.6.1_1.rbz") http://www.sketchup.com/intl/en/developer/docs/ourdoc/sketchup#install_from_archive

注意Sketchup.install_from_archive沒有像load - 它永久安裝擴展SketchUp應該爲load將只是該會話。

只要你有,你認爲應該是在磁盤上的文件路徑 - 因爲它的系統是否能夠找到它:File.exist?("H:\Document\sclf_color_by_z_1.6.1_1.rbz")如果回報false你知道你需要仔細檢查一下你的路徑語法錯誤和錯別字再次檢查。

相關問題