如何修复“npm ERR!addLocal无法安装”

时间:2017-02-16 23:58:15

标签: npm elixir phoenix-framework

尝试将我的Phoenix应用程序推送到Heroku时,我收到此错误。

我一直关注guide from the Phoenix framework website

导致此错误的原因是什么?如何解决?

WARNING: phoenix_static_buildpack.config wasn't found in the app
remote:        Using default config from Phoenix static buildpack
remote:        Will use the following versions:
remote:        * Node 6.9.2
remote:        Will export the following config vars:
remote:        * Config vars DATABASE_URL
remote:        * MIX_ENV=prod
remote: 
remote: -----> Installing binaries
remote:        Downloading node 6.9.2...
remote:        Installing Node 6.9.2...
remote:        Using default npm version
remote: 
remote: -----> Building dependencies
remote:        Installing and caching node modules
remote:        npm ERR! addLocal Could not install /tmp/build_23f60aac277eab15b4ce274dcaf9bb16/deps/phoenix
remote:        npm ERR! addLocal Could not install /tmp/build_23f60aac277eab15b4ce274dcaf9bb16/deps/phoenix_html

remote:        npm ERR! Linux 3.13.0-105-generic
remote:        npm ERR! argv "/tmp/build_23f60aac277eab15b4ce274dcaf9bb16/.heroku/node/bin/node" "/tmp/build_23f60aac277eab15b4ce274dcaf9bb16/.heroku/node/bin/npm" "install" "--quiet" "--unsafe-perm" "--userconfig" "/tmp/build_23f60aac277eab15b4ce274dcaf9bb16/npmrc"
remote:        npm ERR! node v6.9.2
remote:        npm ERR! npm  v3.10.9
remote:        npm ERR! path /tmp/build_23f60aac277eab15b4ce274dcaf9bb16/deps/phoenix
remote:        npm ERR! code ENOENT
remote:        npm ERR! errno -2
remote:        npm ERR! syscall open
remote:        
remote:        npm ERR! enoent ENOENT: no such file or directory, open '/tmp/build_23f60aac277eab15b4ce274dcaf9bb16/deps/phoenix'
remote:        npm ERR! enoent ENOENT: no such file or directory, open '/tmp/build_23f60aac277eab15b4ce274dcaf9bb16/deps/phoenix'
remote:        npm ERR! enoent This is most likely not a problem with npm itself
remote:        npm ERR! enoent and is related to npm not being able to find a file.
remote:        npm ERR! enoent
remote:        
remote:        npm ERR! Please include the following file with any support request:
remote:        npm ERR!     /tmp/build_23f60aac277eab15b4ce274dcaf9bb16/npm-debug.log
remote:  !     Push rejected, failed to compile Phoenix app.

1 个答案:

答案 0 :(得分:0)

我遇到了和以前一样的问题。尝试将npm版本添加到phoenix_static_buildpack.config文件

以下是我的应用中的示例:

phoenix_static_buildpack.config (在根目录中)

clean_cache=false
compile="compile"
config_vars_to_export=(DATABASE_URL)
node_version=6.9.5
npm=3.10.8
phoenix_relative_path=.
remove_node=false

你也可以设置 elixir_buildpack.config (也在根目录中)

erlang_version=18.3
elixir_version=1.4.0
always_rebuild=false
runtime_path=/app