安装Bower包:"no-json No bower.json file to save to"

24

我将一个 bower 包添加到我的项目根目录中。我使用 bower 来更轻松地管理每个组件的更新(其中之一就是 bower 的功能)。但是,在安装后,我收到了以下消息:

no-json No bower.json file to save to

几件事情:

— 实际上,在组件文件夹内有一个bower.json文件。是否应该有全局项目bower.json文件?

— 这个错误会导致包不更新吗?

— 该项目是使用“WordPress-Starter-Theme”(它使用grunt来处理compass等)的WordPress项目。Grunt是否会干扰?我需要在Gruntfile.js中添加任何内容来管理Bower吗?

提前感谢。

9个回答

48

你可以运行

bower init
在当前目录中创建JSON文件。 文档

4
来自未来的你好。在VS2017中,我应该在哪里运行这个命令?我使用空的asp.net core项目模板开始学习一些VS与mvc模板捆绑的东西。 - Zack
@Zack,在包含你的*.csproj文件的同一文件夹中打开一个命令窗口。 - user2023861
2
@Zack 在 Visual Studio 2017 下,你需要执行以下步骤:
  1. 打开命令提示符
  2. 切换到项目目录
  3. 运行以下命令 "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Web\External\Bower.cmd" init
- Kyriacos
谢谢 :) 我刚把该目录添加到我的环境路径中。 - Zack

7
如果你使用的是Visual Studio(2017),你可以简单地进行以下操作:
  • 在项目上添加新项
  • 选择:Web -> 通用 -> Bower配置文件

这不仅会添加一个bower.json文件,还会添加.bowerrc文件。 如果没有.bowerrc文件,包将不会从隐藏的'bower_components'文件夹复制到wwwroot/lib文件夹中。


谢谢!帮了我很大的忙。Microsoft文档缺少了这一步骤。 - Sven

4
bower.json 文件应该始终位于项目文件夹的根目录。此外,该文件不应该在 bower_components 文件夹中,因为 bower 负责自己创建这个文件夹。
该错误意味着如果您运行 bower install --save,依赖关系将不会记录在您的 bower.json 中。这是一个坏主意,因为您会失去包管理器提供的重大好处。
Grunt 和 Bower 完全独立于彼此,您无需更改有关 Grunt 设置以使用 grunt 的任何内容。

1
如果您通过sudo apt-get install nodejs使用包管理器安装节点,您还需要使用sudo apt-get install nodejs-legacy安装nodejs-legacy,以便在根目录中生成bower.json。
rails g bower_rails:initialize json

并且对于 bowerfile

rails g bower_rails:initialize

1
您在根目录安装的意思是WP roots,正如您提到您正在尝试使用Bower来制作您的WordPress主题。因此,只需在WordPress根目录中创建.bowerrc文件,并在.bowerrc文件中编写以下代码即可。请保留HTML标签。

您在根目录安装的意思是WP roots,正如您提到您正在尝试使用Bower来制作您的WordPress主题。因此,只需在WordPress根目录中创建.bowerrc文件,并在.bowerrc文件中编写以下代码即可。

{
    "directory": "wp-content/themes/yourthemefolder/ui-libraries"
}

现在在你的根目录下创建bower.json,并像往常一样在其中写下所有依赖项的名称。你可以从.bowerrc中覆盖Bower配置阅读更多详细信息。

如果有帮助,请告诉我。


0
我发现导致错误的原因是将组件安装在错误的目录中。只需确保命令行中的文件路径指向相应的目录即可。在我的情况下,C:\Users\Nick\Documents\myprojectfolder>..commands..

0
请务必删除不必要的空格或额外的换行符,以避免出现错误"找不到bower.json或component.json文件"。
还要像上面提到的那样,在包含bower.json文件的目录中运行bower installbower-installer命令。
对于bowerbower-installer都适用。

0

在Visual Studio 2017中,您需要执行以下步骤:

  1. 打开命令提示符
  2. 进入项目目录
  3. 运行以下命令 "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Web\External\Bower.cmd" init

-1
我用以下方法解决了这个问题:
npm install -g bower

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接