2011-04-13 3 views
9

lib 디렉토리를 사용하려고하지만,이 오류가 ...npm 0.3.0에서 작동하려면이 package.json 파일에서 어떤 것을 변경해야합니까?

npm ERR! JSON.parse Failed to parse package.json data. 
npm ERR! JSON.parse Note that package.json must be actual JSON, not 
npm ERR! JSON.parse just a JavaScript object. 
npm ERR! JSON.parse 
npm ERR! JSON.parse This changed in npm 0.3.0, and is not a bug in npm. 
npm ERR! JSON.parse Tell the package author to fix their package.json file. 

변경 가능성이 유효한 JSON을 만드는 데 필요한 무엇 확실하지, 정말 고마워!

+0

http://jsonlint.com/ – Domenic

+0

@ 팬시가 내 대답을 확인합니다. 나는 가장 우아한 방법이라고 생각합니다. anser를 재설정 할 수 있습니까? – Barun

답변

14

유효한 JSON은 개체의 키와 값을 따옴표로 묶어야합니다. 모든 키를 따옴표로 묶으면 오류가 사라집니다.

참조 : JSON spec

업데이트 : 내가 당신을 위해 더러운 일을했다. 이 문제가 해결되면 알려주십시오. @Hans 엥겔의 대답 사용 npm help json 외에도

{ "name": "embedly" 
, "version": "0.3.2" 
, "description": "Embedly client library for node" 
, "homepage": "https://github.com/embedly/embedly-node" 
, "keywords": [] 
, "author": 
    { "name": "Bob Corsaro" 
    , "email": "[email protected]" 
    , "url": "http://www.google.com/profiles/rcorsaro" 
    } 
, "repository": 
    { "type": "git" 
    , "url": "git://github.com/embedly/embedly-node" 
    } 
, "bugs": { "web": "http://github.com/embedly/embedly-node/issues/" } 
, "directories": 
    { "doc": "./docs" 
    , "lib": "./lib" 
    , "test": "./test" 
    } 
, "dependencies": {"hashish": "", "qs": ""} 
, "devDependencies": {"vows": ">= 0.5.6"} 
, "main": "./lib/embedly.js" 
, "scripts": { "test": "vows" } 
, "bin": 
    { "embedly_oembed": "bin/embedly_oembed.js" 
    , "embedly_objectify": "bin/embedly_objectify.js" 
    , "embedly_preview": "bin/embedly_preview.js" 
    } 
} 
+4

다른 일반적인 차이점은 사전이나 배열에서 후행 공통점입니다. JSON 뒤에는 쉼표가 없어야합니다. – Erik

+0

부울을 따옴표로 묶어야했기 때문에이 역시 저를 던졌습니다. 따옴표없이 http://jsonlint.com/을 전달했습니다. – Antfish

5

은 package.json 파일에 있어야합니다 무엇의 사양을 얻을 수

16

그냥 대답을 완료하려면, 당신은 단순히 검증하기 위해 온라인 JSON 유효성 검사기를 사용할 수 있습니다 귀하의 package.json.
http://jsonlint.com/을 강력 추천하고 package.json을 텍스트 영역에 붙여 넣은 다음 유효성 검사 버튼을 클릭하십시오.

+1

+100 upvotes 내가 줄 수 있다면 –

+0

@ SarasArya 내 대답에 대해 얼마나 많은 upvotes? – Barun

+0

그리고 나는 higjly json 객체를 검증하는 나의 방법을 추천한다. @afshin Mehrabani – Barun

0

나는이 문제를 겪어 왔고 나의 경우에는 쉼표 대신에 (,). 점 (.)을 사용했습니다. JSON 검사기에서 열면 JSON 검사기가 열립니다. JSON 검사기의 링크 중 하나는 다음과 같습니다.

node package.json

당신이 당신의 JSON의 유효성을 검사하거나 오류 라인이 다음 package.json을 확인/수정 http://www.bodurov.com/JsonFormatter/

8

슈퍼 멋진 방법입니다.

jsonlint을 사용하는 이유는 꽤 절름발이입니다.

+0

슬프게도 하나의 upvote가 허용된다. :피 –

0

동일한 오류 메시지가 나타나면 먼저 npm package.json을 실행하여 package.json 파일의 오류를 확인한 다음 npm cache clean을 실행하십시오.

관련 문제