2011-10-06 54 views
9

我一直在寻找一个适用于NodeJS的Java Maven等价物,但无法真正地找到它,所以我发布了这个问题,以查看是否有工具/框架的组合我可以用它来构建和部署Node。我在寻找的具体任务是:为NodeJS构建和部署框架

  • 如果能够抓住相关模块的签出代码项目的NodeJS
  • 建立私有存储库的NodeJS模块(前快递或类似的东西。)在内部项目
  • 包具有相关性,使节点项目发布到存储库(如战争八九不离十)
  • 部署发布到远程箱和火起来节点

任何帮助将是巨大的ly赞赏!!!

+0

因此,我一直在参与的所有节点部署都已更新git repo'npm install',重新启动节点。与Java世界不同,在大多数情况下,您不需要打包的.war文件进行部署。你可以随时复制你的npm包,如果你想部署它们,而不是在该位置安装。 – Travis

+0

我明白,包装。战争是不需要的,但有一个文件知道你只需要一个盒子上的Node来运行它,而不必担心依赖关系。我可以用一个脚本来解决这个问题,该脚本使用node_modules压缩模块,并使用版本名称进行标记。 私人回购也是一个很大的交易,如果你做代码开发专业的地方代码r不开源。因此,idk是否有任何内容已经集成了这些片段 –

+0

我并不完全确定私人maven repo为您带来的评论价值,但是如果您在多个项目中使用内部包,则您将托管自己的npm repo 。虽然这并不简单。也许你在谈论私人git回购?如果你愿意,你可以在内部托管git。这几乎不难设置。 – Travis

回答

10

Npm为你做了大部分工作。

相关处理:

  1. 为您的项目创建一个package.json(见required contents或使用npm init
  2. 提交它沿着你的项目文件,这将是你的依赖追踪
  3. npm install将整理出并下载所有依赖关系

部署:

  1. 上传/把你的文件到服务器
  2. 在服务器上发送node_modules文件夹一起或运行npm install
  3. 要使用你的私人图书馆,你要么需要上传模块文件夹或发布它们(见下文)

私人/本地库:

  1. 在您想要的任何地方创建库(例如, ~/Projects/mylib
  2. 转到mylib文件夹,运行npm link
  3. 去该项目的文件夹,然后运行npm install mylib
  4. 现在当地的图书馆被链接到项目的node_modules

要设置一个私人仓库您的模块,请按照these instructions

+0

Tomasi,你甚至可以使用capistrano进行部署,有点烦恼,但一旦设置就会顺利运行。 – Cu7l4ss