无法使用 Grunt 安装 Bower 组件 - "Arguments to path.join must be strings"

Can't install Bower components using Grunt - "Arguments to path.join must be strings"

我在使用 Gruntfile.js 安装 Bower 组件时遇到问题。但是,我可以使用 Bower 命令安装 Bower 组件。

使用 Bower 命令安装 Bower 组件工作正常。

bower install

但是我无法使用 Grunt 命令安装 Bower 组件

grunt bower:install

她的一些细节。

bower.json:

{
    "name": "test",
    "version": "0.0.2",
    "dependencies": {
        "angular": "latest",
        "bootstrap": "latest",
        "lodash": "latest",
        "font-awesome": "latest"
    },
    "devDependencies": {
        "angular-mocks": "latest"
    }
}

.bowerrc:

{
    "directory": "libs",
    "json": "bower.json"
}

Gruntfile.js:

bower: {
    install: {
        options: {
            install: true,
            copy: false,
            targetDir: './libs'
        }
    }
}

当我尝试使用 Grunt 安装 Bower 组件时,出现以下错误:

Running "bower:install" (bower) task
...
bower validate 1.3.15 against git://github.com/angular/bower-angular.git#*
bower new version for git://github.com/angular/bower-angular.git#*
bower resolve git://github.com/angular/bower-angular.git#*
Fatal error: Arguments to path.join must be strings

有人看到我的 Gruntfile.js 文件有什么问题吗?为什么我在使用 Grunt 安装 Bower 组件时会收到此错误? 谢谢。

以下是我的配置方式:

bower: {
            install: {
                options: {
                    targetDir: bowerDir,
                    install: true,
                    cleanTargetDir: false,
                    cleanBowerDir: false,
                    bowerOptions: {}
                }
            }
        }

还要确保您的 package.json 文件中有依赖项:

  "devDependencies": {
    "bower": "^1.3.1",
    "grunt": "^0.4.5",
    "grunt-bower-task": "^0.4.0",
    "grunt-cli": "^0.1.13",

也尝试 运行 这些命令:

npm install grunt-cli --save-dev
npm install grunt-bower-task --save-dev