Как разрешить адреналин Antlr3

У меня есть проект asp.net MVC 4 с MEF и RavenBD.

При загрузке проекта это исключение: Не удалось загрузить файл или сборку Antlr3.Runtime.dll

Я обнаружил, что оба RavenDB и WebGrease (установленные с MVC 4) используют Antlr3. Но WebGrease поставляется со своей собственной DLL Antlr3, подписанной Microsoft - PublicKeyToken 31bf3856ad364e35

Antlr3 default PublicKeyToken - eb42632606e9261f.

RavenDB и WebGrease используют ту же версию Antlr3 3.3.1.7705

Как я могу решить эту проблему?

Ответ 1

К сожалению, я не нашел решение конфликтных зависимостей той же версии с разными сигнатурами.

Но хорошей новостью является то, что один из участников WebGrease, Говард Диркинг, ответил на мои вопросы по электронной почте. Здесь его ответ:

Hi Maxime - извините, что вы столкнулись с этим. Я работаю, чтобы сделать пару чтобы быстро решить проблему:

1) Подготовка обновления к пакету antlr с последним antlr версия - будет проверять и нажимать на nuget.org

2) Работа с командой WebGrease для изменения их пакета NuGet так что он не отправляет antlr.dll, а скорее принимает пакет зависимость - в разговоре с ними они не знали, что пакет существовала.

Это должно решить проблему адского атак dll, с которой вы столкнулись. С надеждой это не займет больше пары недель с праздниками.

Спасибо,

_howard

Ответ 2

У меня была такая же проблема и решить ее, удалив весь проект с моего компьютера, получив последнюю версию с сервера и восстановив все зависимости nuget после загрузки проекта. Вы можете попробовать это, это сработало для меня.

Кажется, что некоторые зависимости nuget оставляют некоторые мусорные файлы после удаления и что единственный способ сделать чистую перестройку для всего решения