4

やなど、グローバルにアクセス可能な node.js モジュールを作成したいと考えていexpressますmocha

そこで私は彼らのソース コードに飛び込み、次の短い例を作成しました。

hello/ディレクトリにあるindex.jsファイル:

#!/usr/bin/env node

console.log("Hello world!")

ご覧のとおり、概念をテストするのは単なる "hello world" です。

そして、同じhello/ディレクトリにあるpackage.jsonファイルを次に示します。

{
  "name": "Hello",
  "version": "0.0.1",
  "main": "./index",
  "bin": {
    "hello": "./bin/hello"
  }
}

そして、次のようにnpmでノードアプリをインストールしようとしました:

sudo npm install -g hello/

しかし、これはエラーを返します:

npm ERR! Error: ENOENT, chmod '/usr/local/lib/node_modules/Hello/bin/hello'

expressとで見つけたようにモジュール構造を尊重したので、何が悪いのかわかりませんmocha。次の方法でお手伝いいただけますか。

  • 私の場合の何が悪いのかを指摘する
  • 実行可能なノード モジュールの作成に関する便利な説明とリソースへのリンク

ありがとう。

4

1 に答える 1

0

ディレクトリをインストールしようとしています。

モジュールをローカルにインストールする場合は、それを にコピーするだけです/usr/local/lib/node_modules/npm/node_modules/

ただし、npmインストールする (共有する) 場合は、パッケージを作成する必要があります。

npm login
npm publish
npm install -g hello

恥ずかしければnpm unpublish削除します。

于 2013-03-09T16:28:01.083 に答える