我正在创建一个多项目模板,该模板具有一些可选的项目和解决方案文件夹。我在Github经历了很多不同的文档和代码来实现这一目标,但成功很少。我真的很感谢有人可以在其中一些问题上给我一些清晰度吗?
- VSTEM Plate XML文件仍然相关?该博客建议在模板文件中进行更改。但是,当我在Github中检查示例时,人们会使用Vemple Plate来创建项目,而且Sidewaffle Plugin仍然会创建Vementhe Plate File。如果仍然相关,想知道它与JSON文件有何不同?
-
使用上述文章板我尝试创建一个多项目模板,使用ProjectCollection Tage,当我运行dotnet run命令时,该模板将执行,但没有创建项目。
<ProjectTemplateLink ProjectName="$safeprojectname$.Forms.Plugin.Abstractions"> Forms.Plugin.AbstractionsForms.Plugin.Abstractions.vstemplate </ProjectTemplateLink> <ProjectTemplateLink ProjectName="$safeprojectname$.Forms.Plugin.iOS"> Forms.Plugin.iOSForms.Plugin.iOS.vstemplate </ProjectTemplateLink> <ProjectTemplateLink ProjectName="$safeprojectname$.Forms.Plugin.iOSUnified"> Forms.Plugin.iOSUnifiedForms.Plugin.iOSUnified.vstemplate </ProjectTemplateLink> <ProjectTemplateLink ProjectName="$safeprojectname$.Forms.Plugin.Android"> Forms.Plugin.AndroidForms.Plugin.Android.vstemplate </ProjectTemplateLink> <ProjectTemplateLink ProjectName="$safeprojectname$.Forms.Plugin.WindowsPhone"> Forms.Plugin.WindowsPhoneForms.Plugin.WindowsPhone.vstemplate </ProjectTemplateLink> </ProjectCollection>```
我们可以使用template.json文件创建多项目模板吗?
如果有人可以帮助我入门。
我通过在模板中进行更改。
这是最终模板。JSON文件看起来像
This is my updated template.json file
{
"author": "Libin Joseph",
"classifications": ["Xamarin", "Sample"],
"name": "Sample Enterprise Template",
"tags": {
"language": "C#"
},
"identity": "libin.sampletemplate",
"shortName": "sampletemplate",
"sourceName": "SampleTemplate",
"guids": [
"{41F47D3C-C9E4-45D1-A289-3BDC31E44C19}",
"{980FBE34-066B-4E87-AFC9-C3205844D980}",
"{FD448FB5-B24B-4CD2-8E3C-2500CF0E4601}",
"{D8FC665A-7739-4ADE-85E9-C69AA107EEE6}",
"{92D25D7D-F637-4634-B939-BB38DE53B606}",
"{5D52EDF7-47B8-48D2-83B6-104B18568CE4}",
"{12E171B1-0F36-401A-A171-614F1A1C83E9}",
"{7A4597AE-2C39-4197-94C9-F5B6B45B2106}"
],
"primaryOutputs": [{
"path": "SampleTemplate\SampleTemplate.Android\SampleTemplate.Android.csproj"
},
{
"path": "SampleTemplate\SampleTemplate.iOS\SampleTemplate.iOS.csproj"
},
{
"path": "SampleTemplate\SampleTemplate\SampleTemplate.csproj"
},
{
"path": "SampleTemplate.UnitTest\SampleTemplate.UnitTest.csproj"
},
{
"path": "SampleTemplate.UITest\SampleTemplate.UITest.csproj"
},
{
"path": "SampleTemplate.Core\SampleTemplate.Core.csproj"
}
],
"exclude": ["**/[Bb]in/**", "**/[Oo]bj/**", ".template.config/**/*", "**/*.lock.json"]
}