如何在不使用npm的情况下安装node.js模块?

时间:2011-04-26 05:45:26

标签: node.js packages npm

有很多模块列出on node's github page但未使用npm-registry发布。无法使用npm安装这些模块。

从Git克隆这些nodejs模块后安装这些nodejs模块的正确方法是什么?

5 个答案:

答案 0 :(得分:65)

您需要从github下载他们的源代码。找到主文件,然后将其包含在主文件中。

这方面的一个例子可以在这里找到> How to manually install a node.js module?

通常你需要查找源代码并浏览package.json文件。在那里你可以找到哪个是主文件。因此,您可以将其包含在您的应用程序中。

在您的应用中包含example.js.将其复制到您的应用程序文件夹中,并将其附加到主js文件的顶部。

var moduleName = require("path/to/example.js")

答案 1 :(得分:60)

  

无法使用npm安装这些模块。

实际上,您可以通过指定本地路径而不是名称来安装模块。只要存储库具有有效的package.json文件,它就可以工作。


输入npm -l,一个漂亮的帮助将如下所示:

<强> CLI:

...
install     npm install <tarball file>
                npm install <tarball url>
                npm install <folder>
                npm install <pkg>
                npm install <pkg>@<tag>
                npm install <pkg>@<version>
                npm install <pkg>@<version range>

                Can specify one or more: npm install ./foo.tgz bar@stable /some/folder
                If no argument is supplied and ./npm-shrinkwrap.json is 
                present, installs dependencies specified in the shrinkwrap.
                Otherwise, installs dependencies from ./package.json.

引起我注意的是:npm install <folder>

在我的情况下,我遇到了mrt模块的问题所以我这样做了(在临时目录中)

  • 克隆回购

     git clone https://github.com/oortcloud/meteorite.git
    
  • 我用全局安装它:

     npm install -g ./meteorite
    

提示:

还可以使用以下方式将repo安装到本地npm项目:

     npm install ../meteorite

如果需要开发补丁,还可以创建一个指向repo的链接:

     npm link ../meteorite

答案 2 :(得分:10)

将代码从github下载到node_modules目录

var moduleName = require("<name of directory>")

应该这样做。

如果模块具有dependancies且具有package.json,请打开模块并输入npm install。

希望这有帮助

答案 3 :(得分:7)

您可以直接将模块克隆到本地项目中。

启动终端。 cd进入你的项目,然后:

npm install https://github.com/repo/npm_module.git --save

答案 4 :(得分:1)

步骤一步:

  • 假设您正在处理项目use-gulp 使用(require s)node_modules,例如gulpgulp-util
  • 现在您要对gulp-util lib进行一些修改,并使用您的use-gulp项目在本地进行测试......
  • 在{github \ bitbucket等上的gulp-util项目。
  • 切换到您的项目:cd use-gulp/node_modules
  • gulp-util克隆为gulp-util-devgit clone https://.../gulp-util.git gulp-util-dev
  • 运行npm install以确保gulp-util-dev的依赖关系可用。
  • 现在您的gulp-util镜像gulp-util-dev。在您的use-gulp项目中,您现在可以使用:require('gulp-util')...;替换require('gulp-util-dev')来电,以测试您对gulp-util-dev所做的更改