Windows> Vagrant> nodejs无法查看本地包

时间:2017-03-21 18:58:14

标签: node.js linux ubuntu npm vagrant

我尝试使用Windows 10在笔记本电脑上设置我的环境。我需要Linux环境,但Windows对我来说更舒服。这就是为什么我希望将Vagrant与Ubuntu一起使用。

所以我有以下内容:

  • Windows 10 - 主操作系统
  • Vagrant 1.9.2
  • Ubuntu 14.04.5 LTS(GNU / Linux 3.13.0-110-generic x86_64) - 虚拟操作系统
  • node 6.10.0
  • npm 3.10.10

Here is my vagrantfile

Here is my shell for my virtual box

问题:

在完成所有安装之后{I} npm i看起来好像正常。

但是当我运行使用一些本地软件包的脚本时 - nodejs说:

sh: 1: <local-package>: not found

它可以是永恒的:

sh: 1: cpy: not found

sh: 1: npm-run-all: not found

sh: 1: rimraf: not found等......

我尝试了很多不同版本的ubuntu(ubuntu / trusty64,ubuntu / xenial64),nodejs(4.xx,6.xx,7.xx,latest),npm(2.xx,3.xx,4 .xx,最新)每次我遇到与本地npm软件包相同的问题。

任何想法如何解决? 谢谢!

1 个答案:

答案 0 :(得分:1)

问题是您尝试从不兼容* nix的文件系统执行二进制文件,并且不支持使用chmod +x标记为可执行文件。

有一些潜在的解决方法可以尝试解决这个问题,但所有这些都有一些缺点。请参阅Ryan Sechrest关于这个问题的article

所以,基本上你应该找到一种方法来默认为所有文件重新安装带有可执行标志的共享文件夹,或者在* nix兼容的fs和共享文件夹之间设置某种同步。