仅在Sublime中保存到映射驱动器时出错:无法保存打开用户映射部分的文件

时间:2017-07-06 14:16:21

标签: windows sublimetext3

当我尝试从映射的网络驱动器中升级文件时,我收到错误:

  

无法保存Y:\ MySite \ index.html
  错误:无法对具有用户映射部分的文件执行请求的操作

这个错误在记事本中不会发生,并且来自Sublime Text而不是Windows,这让我觉得Sublime正在尝试在保存过程中做一些时髦的事情。

我尝试过的事情:

  • The file is open somewhere else,我可以将文件保存在记事本中。

  • There may be an issue with user permissions 也许,但我不确定如何修复它。
    链接的帖子不具体。我通过分享了该文件夹 右键单击>属性>分享>分享,添加"每个人",并给予他们"读/写"允许。

    可能是那个"每个人"没有覆盖Sublime用户? (注意:我曾尝试以管理员身份运行sublime,但无济于事)

更多详情:

环境:

  • 我的本地计算机("主机")托管Windows 7虚拟机(" The Guest"),它正在运行Jetty
  • Jetty从webapps提供文件夹作为网络服务器
  • 我将webapps设置为与Everyone
  • 共享
  • 在我映射webapps的主机上,我可以在本地编辑文件。

这是我网络文件夹设置的图片:

enter image description here

问题:

当我在Sublime中本地编辑webapps文件并且guest虚拟机中正在运行Jetty时,我在尝试保存时出现此错误:

enter image description here

但是,如果我在记事本中编辑同一个文件,它可以正常工作。

这似乎是一个Sublime错误而不是Windows错误,这意味着它可能尝试用文件做一些时髦而不是保存它。还有其他人经历过这个吗?

1 个答案:

答案 0 :(得分:0)

感谢Joakim Erdfelt's answer to my other question我弄明白了!

这是windows'内存缓冲,但您可以在Jetty配置文件中修复它。 See the docs for more info。这就是我的所作所为:

  1. 找到您的float i = 0; int b = 1; // Balls while(i<12){ printf( '%d. box', (int) i); i += (float)12 /(float)b ; } 文件。

    • 我在C:\ Place_where_Jetty_was_installed \ Jetty \ etc \
  2. 打开它并搜索webdefault.xml。寻找这个:

    UseFileMappedBuffer
  3. 将param-value设置为false

    <init-param>
      <param-name>useFileMappedBuffer</param-name>
      <param-value>true</param-value>
    </init-param>