nuget包配置复制文件到编译目录


JocPlanTask 计划任务管理 nuget包处理,希望通过nuget包可以方便的引用exe文件,输出exe文件到生成目录,方便配置任务的运行计划

包信息预览:

nuget包配置复制文件到编译目录

targets 名称要等于包名,不然不会生效

targets配置

  1. 文件名必须等于包名
  2. 文件必须处于build目录下
XML 全选
<Project>
    <PropertyGroup Condition="$(TargetFrameworkIdentifier) == '.NETCoreApp'">
        <SourceDic Condition="$(TargetFramework) == 'net5.0'">$(MSBuildThisFileDirectory)..\tools\net5\</SourceDic>
        <SourceDic Condition="$(TargetFramework) == 'net6.0'">$(MSBuildThisFileDirectory)..\tools\net6\</SourceDic>
    </PropertyGroup>
    <PropertyGroup Condition="$(TargetFrameworkIdentifier) == '.NETFramework'">
        <SourceDic Condition="$(TargetFrameworkVersion.StartsWith('v4.5')) == True">$(MSBuildThisFileDirectory)..\tools\net45\</SourceDic>
    </PropertyGroup>
    <Target Name="CopyYESPlanToolsToBinCommon" BeforeTargets="AfterBuild">
        <Copy SourceFiles="$(SourceDic)JocPlanTaskTools.exe" DestinationFiles="$(TargetDir)JocPlanTaskTools.exe" SkipUnchangedFiles="true"></Copy>
        <Message Text="JocPlanTaskTools.exe: $(TargetDir)JocPlanTaskTools.exe" Importance="high" />
    </Target>
    <Target Name="CopyYESPlanToolsToBinCore" BeforeTargets="AfterBuild" Condition="$(TargetFrameworkIdentifier) == '.NETCoreApp'">
        <Copy SourceFiles="$(SourceDic)JocPlanTaskTools.dll" DestinationFiles="$(TargetDir)JocPlanTaskTools.dll" SkipUnchangedFiles="true"></Copy>
        <Copy SourceFiles="$(SourceDic)JocPlanTaskTools.runtimeconfig.json" DestinationFiles="$(TargetDir)JocPlanTaskTools.runtimeconfig.json" SkipUnchangedFiles="true"></Copy>
        <Message Text="JocPlanTaskTools.dll: $(TargetDir)JocPlanTaskTools.dll" Importance="high" />
        <Message Text="JocPlanTaskTools.json: $(TargetDir)JocPlanTaskTools.runtimeconfig.json" Importance="high" />
    </Target>
    <Target Name="DeleteYESPlanToolsFromBin" BeforeTargets="AfterClean">
        <Delete Files="$(TargetDir)JocPlanTaskTools.exe"></Delete>
    </Target>
    <Target Name="DeleteYESPlanToolsFromBinCore" BeforeTargets="AfterClean" Condition="$(TargetFrameworkIdentifier) == '.NETCoreApp'">
        <Delete Files="$(TargetDir)JocPlanTaskTools.dll"></Delete>
        <Delete Files="$(TargetDir)JocPlanTaskTools.runtimeconfig.json"></Delete>
    </Target>
</Project>

 

配置好后,项目添加了nuget包之后,工程文件csproj中会添加如下配置

nuget包配置复制文件到编译目录

只有.net framework 平台才会在工程文件添加import配置\

.net core 中不会修改工程文件,但是仍然会起效

 

参考:https://learn.microsoft.com/zh-cn/visualstudio/msbuild/common-msbuild-project-properties?view=vs-2022

 

 

版权声明:本文为YES开发框架网发布内容,转载请附上原文出处连接
张国生
上一篇:nuget包配置复制文件到编译目录
下一篇:SQL Update更新表数据关联表
评论列表

发表评论

评论内容
昵称:
关联文章

YES-CMS内容管理系统 售价

联系我们
联系电话:15090125178(微信同号)
电子邮箱:garson_zhang@163.com
站长微信二维码
微信二维码