Вопрос

WorkspaceConsole ошибка в логах

При запуске WorkspaceConsole в самом начале лога выполнения операции появляется ошибка. При этом запрошенная операция проходит успешно:

[09:46:11] Error has occurred during the loading of workspace build System.IO.DirectoryNotFoundException: Could not find a part of the path 'C:\Creatio_7.14\Terrasoft.WebApp\DesktopBin\WorkspaceConsole\Terrasoft.WebApp\Terrasoft.Configuration\bin\Terrasoft.Configuration.dll'.
   at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
   at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost)
   at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, FileOptions options, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost)
   at System.IO.File.InternalReadAllBytes(String path, Boolean checkHost)
   at Terrasoft.Common.IO.FileWrapper.ReadAllBytes(String path)
   at Terrasoft.Core.DesignMode.FileSystemWorkspaceAssemblyLoader.LoadAssemblyToWorkspace(SysWorkspace workspace, String assemblyPath)
   at Terrasoft.Core.AppConnection.GetWorkspaceAssembly(SysWorkspace workspace)

В чем может быть проблема? Вижу, что путь не верный, но как попросить WorkspaceConsole обращаться по правильному пути, не понял.

Команда запуска:
 

C:\Creatio_7.14\Terrasoft.WebApp\DesktopBin\WorkspaceConsole\Terrasoft.Tools.WorkspaceConsole.exe ^
-operation=BuildWorkspace ^
-workspaceName=Default ^
-webApplicationPath="C:\Creatio_7.14\Terrasoft.WebApp" ^
-confRuntimeParentDirectory="C:\Creatio_7.14\Terrasoft.WebApp"

 

Нравится

5 комментариев

Дмитрий, а в config-файле программы-консоли, который находится рядом с exe ничего подозрительного нет? Имею в виду неправильный путь, не прописан ли он там.

Александр, спасибо за вопрос! :-)
Нет, в Terrasoft.Tools.WorkspaceConsole.exe.config никаких подозрительных путей нет.
По сути видно, что путь в логах состоит из двух частей
1. Путь к WorkspaceConsole: 
 

C:\Creatio_7.14\Terrasoft.WebApp\DesktopBin\WorkspaceConsole\

2. Путь от корня проекта к Terrasoft.Configuration.dll:
 

\Terrasoft.WebApp\Terrasoft.Configuration\bin\Terrasoft.Configuration.dll

Т.е. WorkspaceConsole использует для поиска Terrasoft.Configuration.dll не корень проекта, а собственную домашнюю папку. 
Каких то параметров у WorkspaceConsole относительно такого поведения я не нашел. Может тут тоже есть какая то хитрость с путями в параметрах? Хотя, всё сделано строго в соответствии с документацией.

Дмитрий, кажется, нашёлся аналогичный случай:

Решил указать параметр "configurationPath" и переменная "Assembly" стала инициализироваться.

Александр. Да, я видел этот пост, но видимо не очень внимательно прочитал.

Добавление параметра -configurationPath, указывающего на конфигурацию проекта ничего не дало.

Помогло добавление этого пути (к конфигурации) в параметр ConfigurationProjectPath файла: Terrasoft.Tools.WorkspaceConsole.exe.config

Ошибки теперь нет, всё работает как надо :-)

Добавлять ли это решение в документацию или нет, решайте сами. Какая то не очевидная штука. И, что характерно, видимо не частая, раз люди о ней не пишут.

Спасибо за решение, Дмитрий. Зафиксировал информацию об отсутствии этих тонкостей в документации.

Показать все комментарии