Heroku推送问题:找不到Bower旋转变压器

时间:2016-11-24 09:55:57

标签: angularjs node.js heroku npm bower

您知道Javascript fatigue吗?

现在我做了。

我不是一个javascript开发人员,但我在我的端项目服务器上使用Node和Angular。

我的所有节点包都安装了npm,我的角度包是bower的安装程序。因为that's the way I learned it。我维护package.jsonbower.json来安装所有内容。通常,我所做的是:

npm install
bower install

但是Heroku只安装了npm包,所以解决方案是在package.json中包含一个安装后脚本

它非常完美,除非有几个库不再维护(但这是另一个问题)。

今天非常完美,当时我遇到了heroku错误消息:

bower angular#*            ENORESOLVER Bower resolver not found: bower-npm-resolver

这是我的package.json

{
  "name"            : "my-marvelous-app",
  "engines": {
    "node": "5.0.0",
    "npm": "3.3.6"
    },
  "main"            : "server.js",
  "dependencies"    : {
        "express"               : "4.5.x",
        "mongoose"              : "4.2.x",
        ...
        [a bunch of important packages...]
        ...
        "vorpal"                : "latest",
        "bower"                 : "1.7.x"
  },
  "scripts"         : {
    "postinstall": "./node_modules/bower/bin/bower install"
  }
}

和我的bower.json

{
  "name": "my-marvelous-backoffice",
  "version": "1.0.0",
  "dependencies": {
    "angular"               : "latest",
    "angular-bootstrap"     : "latest",
    "angular-cookies"       : "latest",
    "angular-route"         : "latest",
    "bootstrap"             : "latest",
    "font-awesome"          : "latest"
  }
}

我不知道该怎么做。 npm install在我的机器上本地工作,但不在heroku上工作。请不要建议我使用另一个包管理器,如yarn或其他什么,我是一个移动开发人员,而且我没有多少时间去学习六个月内过时的炒作。 (对不起,我觉得这很麻烦!)

修改

我终于找到了具有此配置的.bowerrc文件

{
    "directory": "public/libs",
    "resolvers": [
        "bower-npm-resolver"
    ]
}

我删除了resolvers条目,然后又重新开始工作了。我不得不删除一些npm角度包但是......

1 个答案:

答案 0 :(得分:5)

我也用我继承的项目打了这个。解决方案原来是:

[sudo] npm install -g bower-npm-resolver

虽然在您的情况下,从您的.bowerrc删除"解析程序":部分也有效,因为bower.json中没有以npm:开头的依赖项前缀。