首页 > 解决方案 > 创建nuget包时如何使用-NoDefaultExcludes

问题描述

我有一个 travis 构建脚本 在该脚本中它包含一个 nuget 包

dotnet pack src/Google.Analytics.SDK.Core --configuration $BUILD_CONFIGURATION --no-restore --no-build --output $NUPKG_DIR /p:NuspecFile=$NUSPEC_PATH

$NUSPEC_PATH 是一个.nuspec文件。

我在构建中收到以下警告。

/usr/share/dotnet/sdk/2.1.301/Sdks/NuGet.Build.Tasks.Pack/build/NuGet.Build.Tasks.Pack.targets(198,5):警告NU5119:文件'/home/travis/ build/LindaLawton/google-analytics-dotnet-sdk/deploy/.nuspec' 未添加到包中。以“.”开头的文件和文件夹 默认情况下排除或以“.nupkg”结尾。要包含此文件,请在命令行中使用 -NoDefaultExcludes [/home/travis/build/LindaLawton/google-analytics-dotnet-sdk/src/Google.Analytics.SDK.Core/Google.Analytics.SDK.Core.csproj] 成功创建包'/home/travis/build/LindaLawton/google-analytics-dotnet-sdk/NuPkg/Daimto.Google.Analytics.Tracker.SDK.1.0.0-beta.nupkg'。

我无法弄清楚它要我在哪里添加这个-NoDefaultExcludes

标签: nugettravis-ci

解决方案


将标签NoDefaultExcludes添加到您在 pack 命令中定位的项目的PropertyGroup。像这样的东西:

<Project Sdk="Microsoft.NET.Sdk">
    <PropertyGroup>
        <PackageType>Template</PackageType>
        ...
        <NoDefaultExcludes>true</NoDefaultExcludes>
    </PropertyGroup>
</Project>

推荐阅读