使用project.json在nuget包中包含内容文件

4
我正在使用这个.nuspec文件生成一个nuget包。
<?xml version="1.0" encoding="utf-8"?>
<package xmlns="http://schemas.microsoft.com/packaging/2013/05/nuspec.xsd">
  <metadata>
    <id>ClassLibrary1</id>
    <version>1.0.0</version>
    <title>Title</title>
    <authors>Author</authors>
    <owners>Owner</owners>
    <requireLicenseAcceptance>false</requireLicenseAcceptance>
    <description>Description</description>
    <copyright>Copyright 2017</copyright>
    <contentFiles>
      <files include="any/any/myfile.xml" buildAction="None" copyToOutput="true" flatten="true" />
    </contentFiles>
  </metadata>
</package>

在构建引用此NuGet包的项目时,使用此配置将会把内容文件复制到输出文件夹中。 现在我正在将我的项目转换为.Net Core项目,并且希望使用project.json生成NuGet包并且摆脱.nuspec文件。 这是我的project.json文件:

{
  "version": "1.0.0-*",
  "dependencies": { },
  "frameworks": {
    "net452": {
    }
  },
  "packOptions": {
    "files": {
      "mappings": {
        "contentFiles/any/any/myfile.xml":  "Configuration/myfile.xml"
      }
    }
  },

  "scripts": {
    "postcompile": [
      "dotnet pack --no-build --configuration %compile:Configuration%"
    ]
  }
}

现在的问题是,当构建引用此NuGet包的项目时,它也会尝试编译内容文件。然后构建失败了。 如何将contentFile从编译中排除?

2个回答

1

目前出于与脚本和转换类似的原因,支持内容已被禁用,但我们正在设计支持内容的功能。

这是来自官方NuGet文档页面的内容。您可以在此处找到相关信息。


1

您无法在ASP.NET Core包中添加内容。相反,您可以使用bower/npm包来使用内容。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接