[英]Package nodejs application with global packages
我們有一個必須打包成拉鏈的項目,所以我們可以將它分發給我們的cliens。 使用正常的node_modules目錄我沒有問題。 我只是將目錄和node.exe放在我的項目文件夾中,並且可以在所有其他計算機上啟動我們的項目而無需安裝節點或運行任何npm命令。
但是現在我對phantomjs有所依賴,需要安裝為全局包npm install -g phantomjs
。
我如何將這樣的模塊打包到我們的項目中? 我首先想到將phantomjs復制到本地node_modules目錄並將路徑變量NODE_PATH設置為此目錄。 它找不到幻影。
開發和客戶端平台都是窗口。
好吧,通常可以使用--save
標志安裝全局依賴項並調用它們的bin,如./node_modules/phantomjs/bin/phantomjs /*now executes*/
(僅作為說明性示例)。
然而,與Phantom一起使用它並不那么簡單,因為它正在下載二進制文件和/或甚至編譯。 你有三個選擇:
npm install -g phantomjs
之前或者在清單中定義它,例如Dockerfile
就像那樣,如果你正在使用容器。 --save
方法。 所以我幾乎不建議只用它來制作一個Docker鏡像並將其作為tarball發送。 不幸的是,您不能壓縮平台相關的Phantom安裝。
此外,許多依賴項(如karma-runner-phantomjs
查找全局依賴項的路徑以解決它們的使用問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.