2015-09-16 215 views
4

我正在使用Visual Studio的gulp在Windows上構建sass文件。這使用了具有64位和32位綁定的libsass。安裝32位和64位綁定

Visual Studio在32位上下文中運行,因此安裝並需要32位libsass。但是,從命令行運行msbuild時,需要64位版本的libsass。

這意味着我不斷收到錯誤libsass bindings not found in ...\node-sass\vendor\win32-ia32-11\binding.node. Try reinstalling node-sass(或win32-x64-14從命令行建立後)。

從不同的上下文運行npm install不起作用,因爲npm認爲模塊已經完全安裝。

目前我發現的唯一解決方案是不斷刪除整個node_modules文件夾,並每次重新安裝所有軟件包。

理想情況下,我想同時安裝32位和64位軟件包。

回答

5

而不是混合64和32版本,您可以將Visual Studio配置爲始終轉到您自己的本地節點安裝。

在Visual Studio中:轉至工具>選項>項目和解決方案>外部Web工具並移動$(PATH)以上$(DevEnvDir)\Extensions\Microsoft\Web Tools\External。現在VS會調用你本地的節點安裝。

+1

這工作!非常感謝!請注意,您應該將您的答案更新爲:工具>選項>項目和解決方案>外部Web工具。 –

1

可能有幫助的解決方法是將所需的binding.node文件複製到適當命名的文件夾中。 binding.node文件可以在node-sass releases page上下載。

如果您添加一個子文件夾,將binding.node的名稱添加到供應商文件夾,然後在其中粘貼binding.node文件(將其重命名爲使用此名稱),然後在需要時找到它。