首页 文章

全局cli npm包适用于Windows但不适用于Linux

提问于
浏览
0

我想创建一个npm cli工具,我在bower的代码中挖掘并复制了他们的基本package.json以及bin和lib / bin文件 .

在Windows上它完美的工作,但在Linux上我只是 : No such file or directory

npm包是:https://www.npmjs.com/package/quilk

这是代码, package.json

{
  "name": "quilk",
  "version": "0.1.3",
  "description": "quilk.",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "John Carmichael",
  "keywords": [
    "builder", "watcher", "fast", "quilk"
  ],
  "license": "MIT",
  "repository": {
    "type": "git",
    "url": "https://github.com/johnc1984/quilk"
  },
  "main": "lib",
  "bin": {
    "quilk": "bin/quilk"
  },
  "files": [
    "bin",
    "lib"
  ],
  "homepage": "https://github.com/johnc1984/quilk",
  "engines": {
    "node": ">=0.10.0"
  },

  "dependencies": {
    "browserify"              : "13.1.0",
    "concat-files"            : "0.1.0",
    "chokidar"                : "1.6.0",
    "fs.extra"                : "1.3.2",
    "javascript-natural-sort" : "0.7.1",
    "jdc-node-cliarg-reader"  : "1.0.0",
    "less"                    : "2.7.1",
    "node-notifier"           : "4.6.1",
    "node-minify"             : "1.3.9",
    "q"                       : "1.4.1",
    "recursive-readdir"       : "2.0.0"
  }
}

bin/quilk

#!/usr/bin/env node

require('../lib/bin/quilk');

lib/bin/quilk

process.bin = process.title = 'quilk';

console.log('This is the quilk script.');

在Windows上全局安装的最终结果是在我输入 quilk 之后,在输出上运行的console.log是 This is the quilk script. .

在Ubuntu 14lts上,尝试运行全新安装的npm模块导致输出 : No such file or directory

在Linux上运行这个运行我错过了什么?

(当我运行命令列出全局安装的npm模块 npm ls -g quilk列出时)

更多信息:我在以下版本中得到完全相同的问题:

  • Ubuntu 14lts,节点6.4.0,npm 3.10.3

  • Debian 6.0.10,节点0.12.7,npm 2.11.3

1 回答

  • 1

    我找到了答案 .

    事实证明,在Windows 10上的npm中存在某种错误 .

    从linux框中发布相同的软件包后,npm软件包现在可以在linux和windows上运行,这让我相信windows上的npm发布在某些地方有一些bug .

    报告的问题:https://github.com/npm/npm/issues/13808

相关问题