У меня возникла странная проблема с компилятором roslyn. Иногда, когда я создаю решение, я сталкиваюсь с необычной проблемой в списке ошибок, которая не позволяет мне создавать решение. Вот ошибка:
Код серьезности Описание Состояние подавления строки файла проекта Ошибка Не удалось скопировать файл "D:\Sealogical New Website\SealogicalWebsite\packages\Microsoft.Net.Compilers.1.0.0\tools\csc.exe" в "bin\roslyn\csc.exe". Доступ к пути "bin\roslyn\csc.exe" запрещен. SealogicalWebsite
Код серьезности Описание Состояние подавления строки файла проекта Ошибка Не удалось скопировать файл "D:\Sealogical New Website\SealogicalWebsite\packages\Microsoft.Net.Compilers.1.0.0\tools\VBCSCompiler.exe" в "bin\roslyn\VBCSCompiler.exe". Отказано в доступе к пути "bin\roslyn\VBCSCompiler.exe". SealogicalWebsite
-
Я пытаюсь очистить решение и перестроить его, но не работает снова.
-
Пытался удалять файлы вручную, но снова показывает ошибку, указывающую У меня нет прав для этого:
-
Пробовал удаление из
CMD
, но снова показывает ту же ошибку:
Единственный способ удалить файлы, созданные roslyn, - это перезапустить компьютер, и при перезапуске я могу удалить их вручную без проблем.
Я являюсь администратором на своем ПК, поэтому никаких проблем с этим я не думаю.
Эта проблема возникает в Visual Studi0 2015 и Visual Studio 2017.
Мне не нравится перезагрузка ПК 4-5 раз в день или более, поэтому я спрашиваю здесь.
Некоторые другие детали:
-
Я тот, кто создал этот проект, поэтому теоретически он не должен быть проблемой для этого действия.
-
Когда проект был создан первым, я запустил Visual Studio Режим администратора, как я делаю сейчас.
- Я использую шаблон ASP.MVC 5 в своем проекте.
- Файлы, которые не удаляются,
bin/roslyn/csc
иbin/roslyn/VBCSCompiler
.
Я мог бы найти решение для удаления этой части из web.config, чтобы он не генерировал эти файлы:
<compilers>
<compiler language="c#;cs;csharp" extension=".cs" type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.CSharpCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" warningLevel="4" compilerOptions="/langversion:6 /nowarn:1659;1699;1701" />
<compiler language="vb;vbs;visualbasic;vbscript" extension=".vb" type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.VBCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" warningLevel="4" compilerOptions="/langversion:14 /nowarn:41008 /define:_MYTYPE=\"Web\" /optionInfer+" />
</compilers>
Но это решение вызовет проблему с новыми функциями С# 6, поэтому я не могу удалить этот раздел.....
Кроме того, я попробовал эту команду в CMD, чтобы узнать, есть ли процесс блокировки этого файла, но в любом случае он вообще не показывал мне никакого процесса:
C:\WINDOWS\system32>tasklist /m D:\SealogicalNewWebsite\SealogicalWebsite\SealogicalWebsite\bin\roslyn\csc.exe
INFO: No tasks are running which match the specified criteria.
Кто-нибудь знает способ справиться с этой странной проблемой?