我用npm來安裝大部分依賴庫。現在我想將這些庫添加到我的工作目錄中,以便另一臺計算機可以直接運行它而無需手動下載和安裝這些文件。 我看到很多github上的項目都這樣做。當我想用我的項目使用node.js部署一個庫時,應該包括哪些文件?
應該怎麼做?我應該包括哪些文件?我的大多數庫都在/usr/local/lib/node/
我用npm來安裝大部分依賴庫。現在我想將這些庫添加到我的工作目錄中,以便另一臺計算機可以直接運行它而無需手動下載和安裝這些文件。 我看到很多github上的項目都這樣做。當我想用我的項目使用node.js部署一個庫時,應該包括哪些文件?
應該怎麼做?我應該包括哪些文件?我的大多數庫都在/usr/local/lib/node/
所有你需要運行一個獨立的Node.js應用程式是您的應用程序代碼和節點二進制可執行文件 - 通常是在/ usr/local/bin中發現 - 因爲它已經包含了所有的「原生」的模塊。 (請參閱下面的列表。)如果您的應用程序需要除這些之外的其他庫,則需要將它們作爲應用程序的一部分提供。
如果您選擇使用NPM將應用程序部署到服務器,通過@Raynos下面介紹的方法將很好地工作。
。如果您選擇通過混帳或存檔將應用程序部署到服務器,另一方面,你需要提供所有您的應用程序以及它們的相關性所需要的庫。要做到這一點
一種方法是安裝/拷貝到您的應用程序的主目錄下的「節點模塊的目錄下所有需要的庫文件。
從[email protected]開始,本地模塊包括:assert,buffer,child_process,console,constants,crypto,dgram,dns,events,freelist,fs,http,https,模塊,net,os,路徑,querystring,readline,repl,流,string_decoder,sys,定時器,tls,tty,url,util和vm。
創建一個package.json文件,指出您的依賴項,然後使用npm link
從該軟件包文件進行安裝。
例如包文件:
{
"name": "Inventory-System",
"description": "Manage Inventory web app",
"version": "0.0.1",
"author": "Raynos",
"dependencies": {
"now": "0.5.3",
"backbone": "0.3.2",
"cradle": "0.5.5",
"supervisor": "0.1.2",
"less": "1.0.41",
"ejs": "0.4.1"
}
}
這使您可以聲明性地定義的依賴關係,然後在安裝庫,因爲那樣簡單npm link
。
您還可以進一步發佈並通過npm
發佈自己的圖書館,然後在另一臺計算機上撥打npm install myLibrary
。
庫中的所有文件?這不是太大嗎?我想知道的是哪些文件是必不可少的,哪些只是源文件(例如c源文件)。 – TiansHUo 2011-05-11 01:33:34
那麼,正如我指出的那樣,節點二進制_already包含所有「本地」模塊(斷言,緩衝區等)。您只需要包含您的應用程序所需的任何_additional_模塊。 – 2011-05-11 01:36:33
你是指所有附加模塊的文件?或者一個子集就夠了? – TiansHUo 2011-05-11 01:37:22