首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >尝试注册bower.json文件时出现错误

尝试注册bower.json文件时出现错误
EN

Stack Overflow用户
提问于 2014-03-04 18:31:30
回答 3查看 10K关注 0票数 7

我在Bower注册我的bower.json文件时遇到了问题。任何帮助都将不胜感激。

当我尝试在Bower注册我的项目时

代码语言:javascript
复制
bower register jsnlog git://github.com/mperdeck/jsnlog.js.git -V

我得到了错误消息:

代码语言:javascript
复制
bower jsnlog#*              EMALFORMED Failed to read C:\Users\mperdeck\AppData\Local\Temp\mperdeck-PC-mperdeck\bower\js
nlog-6944-x00dtF\bower.json

Additional error details:
Unexpected token ?

我的bower.json的内容很简单(为了解决这个问题,我去掉了空格和换行符):

代码语言:javascript
复制
{"name":"jsnlog.js","main":"jsnlog.js","version":"2.4.3"}

(请注意,没有?在文件中)

下面是我运行bower register时屏幕上显示的详细信息:

代码语言:javascript
复制
PS D:\dev\jsnlog\jsnlog.js> bower register jsnlog git://github.com/mperdeck/jsnlog.js.git -V
bower jsnlog#*                 resolve git://github.com/mperdeck/jsnlog.js.git#*
bower jsnlog#*                download https://github.com/mperdeck/jsnlog.js/archive/2.4.3.tar.gz
bower jsnlog#*                 extract archive.tar.gz
bower jsnlog#*              EMALFORMED Failed to read C:\Users\mperdeck\AppData\Local\Temp\mperdeck-PC-mperdeck\bower\js
nlog-6944-x00dtF\bower.json

Additional error details:
Unexpected token ?

Stack trace:
SyntaxError: Unexpected token ?
    at Object.parse (native)
    at C:\Users\mperdeck\AppData\Roaming\npm\node_modules\bower\node_modules\bower-json\lib\json.js:41:29
    at fs.js:266:14
    at C:\Users\mperdeck\AppData\Roaming\npm\node_modules\bower\node_modules\graceful-fs\graceful-fs.js:105:5
    at Object.oncomplete (fs.js:107:15)

Console trace:
Trace
    at StandardRenderer.error (C:\Users\mperdeck\AppData\Roaming\npm\node_modules\bower\lib\renderers\StandardRenderer.j
s:74:17)
    at Logger.updateNotifier.packageName (C:\Users\mperdeck\AppData\Roaming\npm\node_modules\bower\bin\bower:109:18)
    at Logger.EventEmitter.emit (events.js:95:17)
    at Logger.emit (C:\Users\mperdeck\AppData\Roaming\npm\node_modules\bower\node_modules\bower-logger\lib\Logger.js:29:
39)
    at C:\Users\mperdeck\AppData\Roaming\npm\node_modules\bower\lib\commands\register.js:86:20
    at _rejected (C:\Users\mperdeck\AppData\Roaming\npm\node_modules\bower\node_modules\q\q.js:808:24)
    at C:\Users\mperdeck\AppData\Roaming\npm\node_modules\bower\node_modules\q\q.js:834:30
    at Promise.when (C:\Users\mperdeck\AppData\Roaming\npm\node_modules\bower\node_modules\q\q.js:1079:31)
    at Promise.promise.promiseDispatch (C:\Users\mperdeck\AppData\Roaming\npm\node_modules\bower\node_modules\q\q.js:752
:41)
    at C:\Users\mperdeck\AppData\Roaming\npm\node_modules\bower\node_modules\q\q.js:574:44

System info:
Bower version: 1.2.8
Node version: 0.10.26
OS: Windows_NT 6.1.7601 x64
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2014-03-04 18:52:00

您的bower json文件(如此处所示:https://raw.github.com/mperdeck/jsnlog.js/2.4.3/bower.json)包含一个前导的不可见unicode字符(可能是BOM)。

这在curl输出中可见:curl https://raw.github.com/mperdeck/jsnlog.js/2.4.3/bower.json

从头开始您的bower.json文件,并使用不添加垃圾的编辑器:-)。

票数 15
EN

Stack Overflow用户

发布于 2014-03-05 20:41:38

这个问题是由我的bower.json文件的编码引起的。然而,删除物料清单是不够的- UTF8 (没有物料清单)被接受。相反,我不得不使用ASCII编码。

票数 2
EN

Stack Overflow用户

发布于 2014-09-18 03:48:58

我修复了这个问题,通过使用vim打开文件并在没有炸弹的情况下保存。

代码语言:javascript
复制
:setlocal nobomb 
:w 
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22169387

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档