![]() |
#10 |
Участник
|
У меня аналогичная ситуация с AX2012CU13. Есть:
а) своя библиотека "MyDll" написанная для .Net 4.5.2, которая использует библиотеки: б) Newtonsoft 6.0.8 под .Net 4.5 в) и еще одну, SDK под .Net 4.5.2, назовем ее SDKDll Все три библиотеки: 1) скопированы в папку C:\Program Files (x86)\Microsoft Dynamics AX\60\Client\Bin 2) скопированы в папку C:\Program Files\Microsoft Dynamics AX\60\Server\MyDEV\bin 3) добавлены в GAC (практика показывает что этот шаг необязателен) 4) перегрузка АОСа с очисткой AUC файлов. 5) добавлены в АОТ как референс. Пробовали добавлять выбирая из списка, выполняя "Browse" и выбирая библиотеку в папке клиента/или в папке сервера 6) создаем новый джоб в АОТ, начинаем писать Newtonsoft, и видим что Аксапта видит библиотеку. 7) создаем новый джоб в АОТ, начинаем писать MyDll, и ничего. 8) при попытке скомпилировать переменную использующую референс на MyDll, получаем ошибку "Variable MyDll has not been declared." На другом сервере с той же версией Аксапты с теми же шагами, библиотека опознается и код компилируется. На данный момент имеем несколько серверов где работает и еще несколько где не работает. На сервере где библотека не опознается, пробовали следующее: - обновить .net до версии 4,7,2 - обновить .net до версии 4,8 - установить VS redistributable package - установить VS Studio 2013 Update 4 - установить MS Dynamics VS Tools - перегрузка сервера - очистка папки XPPIL и последующий full CIL - полная компиляция через axcompile и из АХ клиента - полный СИЛ - синхронизация базы данных - перенос проекта с библиотекой в Визуал Студию 2013 из более поздней версии и создание библиотеки из VS2013. - VS2010 не поддерживает .net 4.5.2 и мы просто не сможем использовать имеющийся SDK - использование подписанной и неподписанной библиотеки (strong name) - использование фукции hot-swap для библиотек в настройках АХ сервера Воз и ныне там. Наблюдения: 1) На одном из старых серверов в папке клиента и сервера не было библиотеки Newtonsoft. Достаточно было ее скопировать в вышеуказанные папки, добавить референс в АОТ и она моментально стала доступной в коде. 2) Также мы нашли версию "MyDll.dll" написанную несколько лет назад. Исходный код затерялся. Так вот эта библиотека становится видимой так же как и Newtonsoft. Сравнение этой старой версии и новой версии в VS Object browser не показало никаких видимых различий. Target .Net framework для обоих библиотек = 4.5.2 Вопросы: 1) ????? 2) что нужно сделать чтобы библиотека стала видимой для компиляции? 3) что не хватает библиотеке (или что лишнее) чтобы она мгновенно опознавалась Аксаптой, как Newtonsoft? |
|