执行脚本installPackage.ps1
将打包并在本地安装项目模板。
关于打包的行为,在模板项目Pack.csproj
中有明确的定义,排除了一些不必要的文件和目录,以下详细说明模板项目打包相关的内容。
模板项目在src/Template
目录下,包含了一个Pack.csproj
文件,主要用来配置打包的内容,如:
<PropertyGroup> <!-- 定义通用排除模式 --> <CommonExcludes>**\bin\**;**\obj\**;**\.vs\**</CommonExcludes> <NodeExcludes>**\node_modules\**;**\.angular\**;**\*.lock</NodeExcludes> <SpecialExcludes>templates\ApiStandard\src\Definition\EntityFramework\DBProvider\ModuleContextBase.cs</SpecialExcludes> <EntityExcludes>templates\ApiStandard\src\Definition\Entity\*\*</EntityExcludes> </PropertyGroup> <ItemGroup> <!-- 定义排除模式数组 --> <ExcludePatterns Include="$(CommonExcludes)" /> <ExcludePatterns Include="$(NodeExcludes)" /> <ExcludePatterns Include="$(SpecialExcludes)" /> <ExcludePatterns Include="$(EntityExcludes)" /> <ExcludePatterns Include="templates\**\src\Modules\**" /> <ExcludePatterns Include="templates\**\.tmp\**" /> </ItemGroup> <ItemGroup> <Content Include="templates\ApiStandard\**\*" Exclude="@(ExcludePatterns)" /> <Content Include="templates\ApiStandard\src\Modules\CommonMod\**" Exclude="**\bin\**;**\obj\**" /> <Content Include="templates\ApiStandard\src\Modules\SystemMod\**" Exclude="**\bin\**;**\obj\**" /> <Content Include="templates\ApiStandard\src\Definition\Entity\SystemMod\**"/> <Compile Remove="**\*" /> </ItemGroup>
主要是排除了bin/obj/node_modules/.angluar等不必要的目录和文件,对于模块内容,只保留了CommonMod
和SystemMod
模块,作为解决方案默认的代码内容。
模板项目包含了多个模块,通常一个模块项目包括:
这些模块同时依赖:
默认模板只保留CommonMod和SystemMod相关的内容,其他不包含,这要求:
模块已经被从模板中移除了,但需要将模块内容单独打包成template.zip,以支持后续可以选择要集成的模块。 要打包的内容:
打包脚本为PackModules.ps1
,执行后会生成template.zip
文件,作为工具的资源文件。