将文件从guest虚拟机添加到VMware主机时出现PHP语法错误

时间:2013-05-29 12:59:54

标签: php ubuntu laravel vmware-fusion

在我的设置源文件位于主机(Mac OSX)上并共享给访客(Ubuntu Server)。 当文件从guest虚拟机添加到主机时,语法错误将出现在文件的最后一行 - 即使没有语法错误。

示例:Laravel Artisan commands

以下所有命令都是从Ubuntu(guest)

运行的

第一次,这样可以正常工作:

php artisan

我也可以很好地重建源文件:

php artisan dump-autoload

但是,由于文件已经重建,因此不再有效:

php artisan

...并导致此语法错误:

PHP Parse error:  syntax error, unexpected 'F' in /mnt/hgfs/www/tmi/api/vendor/composer/autoload_classmap.php on line 1646

如果我使用源代码重新安装文件夹,问题就会消失:

sudo mount /mnt/hgfs/www

现在我可以再次运行以下内容:

php artisan

我的设置

  • 我的主机是Mac OSX,其中包含所有源文件。
  • 我的客户操作系统是安装了php的Ubuntu Server(非gui)。
  • 使用open-vm-tools (vmhgfs)
  • 从主机与来宾共享文件

我对您的任何建议持开放态度,如果您需要详细信息,请询问。

2 个答案:

答案 0 :(得分:2)

我也遇到了VMWare的这个问题 - 每当我进行作曲家更新或转储自动加载时,我都必须重新启动VM,以解决问题。直到下次更新......

这似乎是一个有点已知的问题,但不幸的是我还没有找到任何解决方案。

了解更多信息:

https://github.com/composer/composer/issues/1365

https://superuser.com/questions/511679/getting-an-error-trying-to-set-up-shared-folders-on-an-ubuntu-instance-of-vmware/522337#522337

https://stackoverflow.com/a/14407758/847856

答案 1 :(得分:0)

至少对我来说,这个问题已经解决,自VMware 6.0.2起。我只是将VMware Fusion升级到6.0.2,问题就消失了。