Я пытаюсь использовать ILMerge для интернализации некоторых сборников, связанных с транзитом, в сборку, на которую я ссылаюсь, чтобы устранить конфликты с теми транзитивными зависимостями, которые были еще в моем проекте.Можно ли успешно объединить переходные ссылки на сборки с ILMerge?
В частности, я ссылаюсь на Antlr3.StringTemplate (далее AS, доступный здесь: http://www.stringtemplate.org/download.html). Он ссылается на Antlr3.Runtime.Debug (ARD) и Antlr3.Runtime (AR). Сама ARD также ссылается на AR. В ASCII-арт, это:
AS ---> ARD
\ |
\ v
\---> AR
Поскольку другой сборки я использую, NHibernate 2.1, зависит от различных, несовместимых версии AR, я хотел бы использовать ILMerge слить и усваивают AR в AS. Теоретически я думаю, что это должно сработать; однако у меня возникают проблемы с выполнением теории.
Независимо от того, какие перестановки и варианты я стараюсь, я в конечном итоге с ошибкой следующего вида:
ILMerge.Merge: Узел «Antlr3.Runtime.Debug» не был объединен правильно , Он по-прежнему отображается как внешняя ссылка в задаче сборка.
Является ли то, что я пытаюсь выполнить с ILMerge, даже возможно?
Какие у вас есть доказательства того, что сообщение об ошибке, которое вы получаете, связано с переходными ссылками на сборку? Из предоставленной вами информации звучит так, что это просто случайная ошибка в ILMerge. Это может быть та же ошибка, что и эта: https://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=320999&wa=wsignin1.0 – Timwi