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

有很多模块在node的github页面上列出,但是没有用npm-registry发布。 这些模块不能使用npm进行安装。

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

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

可以在这里find一个这样的例子> 如何手动安装node.js模块?

通常你需要find源代码并通过package.json文件。 在那里你可以find哪个是主文件。 所以你可以把它包含在你的应用程序中。

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

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

这些模块不能使用npm进行安装。

实际上你可以通过指定一个名字而不是一个本地path来安装一个模块。 只要存储库有一个有效的package.json文件,它应该工作。


inputnpm -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 

小费:

你也可以用同样的方式安装到本地的npm项目中:

  npm install ../meteorite 

而且还可以创build一个回购的链接,以防需要开发补丁的情况:

  npm link ../meteorite 

将代码从github下载到node_modules目录中

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

应该这样做。

如果模块有依赖关系,并且有一个package.json,打开模块并inputnpm install。

希望这可以帮助

您可以直接将模块复制到本地项目中。

启动terminal。 cd到你的项目然后:

npm安装https://github.com/repo/npm_module.git –save

一步步:

  • 假设您正在use-gulp一个使用( require s) node_modulesnode_modulesnode_modules gulp-util )的项目use-gulp node_modules
  • 现在,您想对gulp-util lib进行一些修改,并使用您的use-gulp项目在本地进行testing。
  • github \ bitbucket上的fork 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项目中,你现在可以replace: require('gulp-util')...; 请使用: require('gulp-util-dev')来testing您对gulp-util-dev所做的更改