Файл Asp .Net Core Project.json

Я экспериментирую с созданием .Net Core Project, который представляет собой NETStandard.Library версии 1.6.0.

Я хотел поэкспериментировать с командой пост-сборки, но теперь заметил, что в нашем файле project.json есть скрипт «посткомпиляции», который можно создать.

Вот документация. https://docs.microsoft.com/en-us/dotnet/articles/core/tools/project-json

Я создал файл .cmd, который я вызываю из файла json следующим образом:

"scripts": {
"postcompile": ["copyFiles.cmd"]

}

В моем файле cmd у меня может быть простая команда копирования, которая работает:

xcopy /y "C:\Playground\test.txt" "C:\Playground\test\"

На чем я застрял, так это на том, какие переменные теперь доступны мне на данный момент, чтобы дать мне доступ к таким вещам, как выходной каталог сборки? Нигде не могу найти ссылку на это.

Заранее спасибо.


person C. Moore    schedule 22.08.2016    source источник


Ответы (1)


Полный список переменных контекста, которые вы можете использовать для управления потоком в своих скриптах:

Каждый блок скрипта:

%project:Directory%
%project:Name%
%project:Version%

Конкретно для компиляции:

%compile:TargetFramework%
%compile:FullTargetFramework%
%compile:Configuration%
%compile:OutputFile%
%compile:OutputDir%
%compile:ResponseFile%
%compile:RuntimeOutputDir% (only available if there is runtime output)
%compile:RuntimeIdentifier% (only availabe if there is runtime output)
%comiple:CompilerExitCode% (only available in the postcompile script block)

Опубликовать конкретное:

%publish:ProjectPath%
%publish:Configuration%
%publish:OutputPath%
%publish:TargetFramework%
%publish:FullTargetFramework%
%publish:Runtime%

Рекомендации:

https://github.com/aspnet/Home/wiki/Project.json-file#scripts

Событие после сборки в зависимости от конфигурации имя в новом проекте ASP.NET 5

person Sanket    schedule 22.08.2016
comment
Спасибо, это очень полезный список. Я заметил, что могу заставить их работать, если мой скрипт находится непосредственно в моем файле json. Однако, если я поместил свой скрипт в файл .cmd, кажется, что он больше не знает, что такое %compile:OutputDir%, и мой скрипт больше не работает. Любая подсказка, как заставить их работать в файле cmd? - person C. Moore; 24.08.2016
comment
Извините .. понятия не имею об этом - person Sanket; 24.08.2016
comment
Нет, к сожалению, мне не удалось заставить файл cmd работать - person C. Moore; 29.08.2016
comment
@C.Moore, вы можете передать cmd необходимые параметры с помощью командной строки, например myscript.cmd %compile:OutputDir%, и в сценарии получить к ним доступ, используя $1, $2,... - person Tomer W; 30.01.2017