2015-08-13 137 views
0

我試圖用BUILDPACK_URL。我搜索了我的問題的解決方案的一個節點JS應用程序部署到Heroku的,但沒有得到我的問題任何合適的答案。如何節點JS與gruntfile應用程序部署到Heroku的

這是程序我也跟着:

heroku create myapp 
heroku config:add BUILDPACK_URL='https://github.com/stephanmelzer/heroku-buildpack-nodejs-grunt-compass.git' 

然後我承諾我的變化,然後:

git push heroku master 

運行良好grunt任務started.I安裝compass寶石與繁重的工作之前。 當Heroku的嘗試開始咕嚕任務,我得到以下錯誤:

`remote: -----> Installing Compass 
remote: WARNING: You don't have /tmp/build_2f866d4293332f62a9a9aa576a411628/.gem/ruby/2.2.0/bin in your PATH, 
remote:gem executables will not run. 

`

的警告後,我得到了羅盤成功安裝

remote: Building native extensions. This could take a while... 
remote: Successfully installed ffi-1.9.10 
remote: Successfully installed rb-inotify-0.9.5 
remote: Successfully installed rb-fsevent-0.9.5 
remote: Successfully installed chunky_png-1.3.4 
remote: Successfully installed sass-3.4.16 
remote: Successfully installed compass-import-once-1.0.5 
remote: Successfully installed compass-core-1.0.3 
remote:  Compass is charityware. If you love it, please donate on our behalf at http://umdf.org/compass Thanks! 
remote: Successfully installed compass-1.0.3 
remote: 8 gems installed 

然後Heroku的嘗試運行後留言`咕嚕」。在這裏,在這一點上我得到了波紋管的錯誤:

remote: -----> Running grunt heroku:production task 
remote: Running "env:src" (env) task 
remote: 
remote: Running "clean:dist" (clean) task 
remote: 
remote: Running "compass:dist" (compass) task 
remote: Warning: You need to have Ruby and Compass installed and in your system PATH for this task to work. More info: https://github.com/gruntjs/grunt-contrib-compass Use --force to continue. 
remote: 
remote: Aborted due to warnings. 

我不知道爲什麼它不爲已經安裝在我的本地機器compass寶石發現PATH

which compass 
result: /home/username/.rvm/gems/ruby-2.2.0-preview1/bin/compass 

可以任何一個告訴如何克服這個問題,並正確設置寶石的PATH變量。

非常感謝。

+0

嘗試'Heroku的配置:添加BUILDPACK_URL = HTTPS://github.com/ [帳戶]/Heroku的-buildpack-multi.git'相反,看看是否有效。 [從這裏](http://stackoverflow.com/questions/15890076/how-to-setup-gruntfile-to-use-compass-sass-on-heroku)。 – Andy

+0

我曾試過,但沒有運氣。 非常感謝您的回覆。 – monsur

回答

1

我只是看着在buildback源和看到,在兩次斌/編譯它指的是1.9.1。兩次都要設置一個環境變量。

也許Heroku的升級的節點buildpack紅寶石的版本?

我會用叉子叉回購,將值更改爲正在尋找2.2.0路徑值。

你只需更改buildpack的路徑,或跟隨在註釋中的說明。

+0

謝謝。這可能是一個原因。意思,而heroku正在尋找ruby 2.2.0。 – monsur

+0

關鍵點是'remote:警告:您沒有/tmp/build_8786c086fcd09993475156f9d8f6a63a/.gem/ruby/2.2。0/bin在你的PATH中# 我想我需要做的是設置正確的'**路徑**'的heroku ruby​​二進制安裝,以便我的節點應用程序可以與'compass' gem通信。但我沒有想法如何在heroku中設置'PATH'。 – monsur

1

我剛開始有這種確切的問題太多,不知道什麼時候改變的Heroku紅寶石2.2.0。這是我修改PATH問題的buildpack的一個快速分支,https://github.com/adamgoldstein/heroku-buildpack-nodejs-grunt-compass

你可以在命令行上更改buildpack: heroku buildpacks:set https://github.com/adamgoldstein/heroku-buildpack-nodejs-grunt-compass