2016-06-18 2 views
1

명령 줄에서 사용할 수있는 NPM 패키지를 만듭니다. npm의 bin을 사용하여 JS 파일을 실행하도록 지정합니다.Windows에서 npm bin 스크립트가 올바르게 생성되지 않습니다.

@"%~dp0\node_modules\textree\src\cli.js" %* 

내가 명령을 실행할 때, 나는 오류가 점점 오전 : 여기 내 package.json 내가 npm link 실행할 때, NPM에 의해 만들어지는 배치 명령은이 같은 내용을 가지고,

"name": "textree", 
"bin": { 
    "textree": "./src/cli.js" 
    }, 

그러나입니다 : /node_modules/textree/src/cli.js : 나는 그런 nodemon 같은 다른 명령 행 도구를 검사하는 경우 해당 파일이나 디렉토리

, 자신의 배치 스크립트가 있습니다

@IF EXIST "%~dp0\node.exe" (
    "%~dp0\node.exe" "%~dp0\node_modules\nodemon\bin\nodemon.js" %* 
) ELSE (
    @SETLOCAL 
    @SET PATHEXT=%PATHEXT:;.JS;=;% 
    node "%~dp0\node_modules\nodemon\bin\nodemon.js" %* 
) 

내 도구의 일괄 처리 스크립트에 유사한 코드가 포함되어 있지 않으므로 실행하면 오류가 발생합니다.

어떻게 고칠 수 있습니까? npm이 내 패키지의 nodemon과 동일한 스크립트를 생성하도록하려면 어떻게해야합니까?

답변

1

나는 그것을 스스로 알아 냈다. 내 "./src/cli.js"스크립트 맨 위에 hashbang 행을 추가하지 않았습니다.

#!/usr/bin/env node 
관련 문제