Не удается загрузить модуль торта — ожидается директива препроцессора

Я пытаюсь запустить скрипт сборки торта, который загружает модуль для длинного пути к файлу, но возвращает только ошибку CS1024: ожидается директива препроцессора

В файле торта я добавил #module nuget:?package=Cake.LongPath.Module&version=0.5.0, и это строка, в которой я получаю сообщение об ошибке (1,2)

В документах указано, что это формат и что я должен запускать скрипт с --bootstrap перед запуском скрипта. Запуск Invoke-Expression "& `"$CAKE_EXE`" `"$Script`" --bootstrap" вызывает ошибку, а затем я также получаю ее в строке после запуска без флага --bootstrap.

Мне нужно убедиться, что модуль Cake.LongPath установлен и загружен в CI. Любые мысли о других решениях также будут полезны


person Binke    schedule 06.03.2018    source источник
comment
Можете ли вы подтвердить, какую версию Cake вы используете?   -  person Gary Ewan Park    schedule 06.03.2018
comment
Можете ли вы подтвердить, что это команда, которую вы выполняете? Invoke-Expression "& $CAKE_EXE" $Script" --bootstrap" Обратите внимание, что аргумент начальной загрузки на самом деле находится за пределами Invoke-Expression, что неверно.   -  person Gary Ewan Park    schedule 06.03.2018
comment
Выходы Write-Host: & "C:\...\Cake.exe" "build.cake" --bootstrap. Версия Cake установлена ​​​​на 0.18 в packages.config, так что я думаю, что она устарела. Пытался использовать #load для пакета nuget, и он проглотил его, но не уверен, что он действительно работает.   -  person Binke    schedule 06.03.2018
comment
Директива #load предназначена для загрузки в другие файлы .cake или пакеты nuget, содержащие файлы .cake, а не в модули или что-то еще.   -  person Gary Ewan Park    schedule 06.03.2018


Ответы (1)


Команда --bootstrap была добавлена ​​только в версии 0.24.0 Cake. Вы можете увидеть примечания к выпуску здесь:

https://github.com/cake-build/cake/releases/tag/v0.24.0

И вопрос, над которым он работал здесь:

https://github.com/cake-build/cake/issues/1950

Я совершенно уверен, что эта проблема будет решена путем обновления до более новой версии Cake. Это можно сделать, изменив номер версии в файле packages.config и очистив папку инструментов. ПРИМЕЧАНИЕ. В зависимости от используемой версии загрузчика очистка папки инструментов может выполняться автоматически.

person Gary Ewan Park    schedule 06.03.2018
comment
Да, только что обновил и попробовал, и, кажется, это работает, должно было быть первым, что я попробовал, но иногда простые решения ускользают из головы. - person Binke; 06.03.2018