Dotnet new --install показывает информацию об использовании

Когда я пытаюсь установить новый шаблон, используя следующее:

dotnet new --install . --name MyTemplate
или
dotnet new --install "Path" --name MyTemplate

Я получаю информацию об использовании:

Usage: new [options]

Options:
  -h, --help          Displays help for this command.
  -l, --list          Lists templates containing the specified name. If no name is specified, lists all templates.
  -n, --name          The name for the output being created. If no name is specified, the name of the current directory is used.
  -o, --output        Location to place the generated output.
  -i, --install       Installs a source or a template pack.
  -u, --uninstall     Uninstalls a source or a template pack.
  --nuget-source      Specifies a NuGet source to use during install.
  --type              Filters templates based on available types. Predefined values are "project", "item" or "other".
  --dry-run           Displays a summary of what would happen if the given command line were run if it would result in a template creation.
  --force             Forces content to be generated even if it would change existing files.
  -lang, --language   Filters templates based on language and specifies the language of the template to create.

У меня есть каталог .template.config с файлом template.json внутри.

Содержимое файла template.json примерно такое:

{
    "author": "My Department",
    "classifications": [
        "Solution Template"
    ],
    "name": "My Template Name",
    "identity": "My Template Identity",
    "shortName": "mytemplate",
    "tags": {
        "language": "C#"
    },
    "sourceName": "Company.Product",
    "preferNameDirectory": "true"
}

Я, конечно, хотел бы, чтобы он сказал мне, что я делаю неправильно. Это работало для меня в прошлом.

Вам не нужен параметр --name, верно? А . должно быть именем пакета Nuget или путем к локальному файлу.

DavidG 22.05.2019 16:24

Вы правы, мне не нужен параметр --name, но я получаю тот же результат независимо от того, включаю я его или нет. Я пытаюсь установить шаблон из файловой системы, а не из пакета NuGet, поэтому NuGet здесь неприменим.

Matt Ruwe 22.05.2019 16:27

@DavidG - Да, он содержит папку .template.config.

Matt Ruwe 22.05.2019 16:29

Я был бы рад, если бы было сообщение об ошибке, но его нет.

Matt Ruwe 22.05.2019 16:36

Ошибка: Не удалось установить "c:\". Ошибка: значение не может быть нулевым. Имя параметра: путь

Matt Ruwe 22.05.2019 16:38

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

Matt Ruwe 22.05.2019 16:40

Может быть, что-то не так с вашим шаблоном тогда? Его уже нет в списке установленных шаблонов?

DavidG 22.05.2019 16:41

Эээ... Stackoverflow всегда заставляет меня чувствовать себя глупо. На самом деле он устанавливал шаблон, но также показывал информацию об использовании, что меня сбивало с толку. Отправьте это как ответ, и я сделаю это как ответ.

Matt Ruwe 22.05.2019 16:45

Также зарегистрирована ошибка, вы можете добавить, что вы были сбиты с толку, увидев текст справки, что, честно говоря, заставило бы меня думать так же! github.com/dotnet/templating/issues/1773

Martin Ullrich 22.05.2019 16:47

@MartinUllrich Хорошая идея, готово!

Matt Ruwe 22.05.2019 16:56

Добавили ответ и очистим комментарии.

DavidG 22.05.2019 17:19
3 метода стилизации элементов HTML
3 метода стилизации элементов HTML
Когда дело доходит до применения какого-либо стиля к нашему HTML, существует три подхода: встроенный, внутренний и внешний. Предпочтительным обычно...
Формы c голосовым вводом в React с помощью Speechly
Формы c голосовым вводом в React с помощью Speechly
Пытались ли вы когда-нибудь заполнить веб-форму в области электронной коммерции, которая требует много кликов и выбора? Вас попросят заполнить дату,...
Стилизация и валидация html-формы без использования JavaScript (только HTML/CSS)
Стилизация и валидация html-формы без использования JavaScript (только HTML/CSS)
Будучи разработчиком веб-приложений, легко впасть в заблуждение, считая, что приложение без JavaScript не имеет права на жизнь. Нам становится удобно...
Flatpickr: простой модуль календаря для вашего приложения на React
Flatpickr: простой модуль календаря для вашего приложения на React
Если вы ищете пакет для быстрой интеграции календаря с выбором даты в ваше приложения, то библиотека Flatpickr отлично справится с этой задачей....
В чем разница между Promise и Observable?
В чем разница между Promise и Observable?
Разберитесь в этом вопросе, и вы значительно повысите уровень своей компетенции.
Что такое cURL в PHP? Встроенные функции и пример GET запроса
Что такое cURL в PHP? Встроенные функции и пример GET запроса
Клиент для URL-адресов, cURL, позволяет взаимодействовать с множеством различных серверов по множеству различных протоколов с синтаксисом URL.
1
11
912
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

К сожалению, способ работы команды dotnet new --install немного сбивает с толку. Установка может быть успешной, но вывод не делает ее очевидной. Вы получите информацию об использовании и список установленных шаблонов, которые должны включать ваш новый.

Как упоминается в комментариях, есть зарегистрирована ошибка, который призван привести это в порядок.

Я видел похожие результаты при запуске dotnet new -i IdentityServer4.Templates, но пакет не устанавливался, и не отображалась ошибка или другая информация.

Оказывается, nuget.org не был настроен как источник пакета (думаю, новая машина? — хотя думал, что он был настроен по умолчанию при установке Visual Studio).

Вот канал nuget.org на момент написания этой статьи:

https://api.nuget.org/v3/index.json

И вот информация по их настройке на случай, если это поможет кому-то, кто этого не сделал:

https://docs.microsoft.com/en-us/nuget/consume-packages/install-use-packages-visual-studio#package-sources

Другие вопросы по теме