在nuget包中将内容文件设置为“复制本地:始终”

我在构建后事件中使用此命令从项目生成nuget包。该变量%conf%设置为正确的配置(调试或发行版),并且%1是项目名称(例如“ MyCompany.MyProject”)。


nuget pack -Prop Configuration=%conf% "%1.csproj" -exclude *.sql -IncludeReferencedProjects

该软件包仅供我们自己使用,绝不会在nuget上发布。它结束于我们的私有存储库。


在项目中,有一个文件设置为generate action : content和copy local : always。(我的视觉工作室是法语的,所以我不确定100%是否正确。)命名吧importantfile.xml。


在生成的包中,我最终得到以下结构:


- content

    - importantfile.xml

- lib

    -net45 (.NetFramework,Version=v4.5)

        -MyCompany.MyProject.dll

好的,我想importantfile.xml在程序包中进行部署,因为这个文件很重要!


当我在另一个项目中安装软件包时,importantfile.xml将部署在项目的根目录。没关系。但是它没有设置为copy local : always。


我需要importantfile.xml进入copy local : always安装软件包的这个项目。


我该如何实现?


注意事项:


我可以copy local : always在安装软件包后立即设置文件,没什么大不了的。如果包的更高版本的更新将使此属性保持原样,则我将忍受它,但事实并非如此。当更新包,copy local被重置了以never(为说明这里)。


在项目文件夹中有一个nuspec文件,这里是:


<?xml version="1.0"?>

<package >

  <metadata>

    <id>$id$</id>

    <version>$version$</version>

    <title>$title$</title>

    <authors>$author$</authors>

    <owners>$author$</owners>

    <requireLicenseAcceptance>false</requireLicenseAcceptance>

    <description>$description$</description>

    <copyright>Copyright 2014</copyright>

    <tags>some random tags</tags>

  </metadata>

</package>


子衿沉夜
浏览 1277回答 3
3回答
打开App,查看更多内容
随时随地看视频慕课网APP