問題: NuGet パッケージから除外したい Visual Studio プロジェクトに .sql ファイルがあります。これらの .sql ファイルはさまざまなディレクトリにネストされており、nuget パッケージからすべての .sql ファイルを正常に除外できませんでした。
1:ターゲット プロジェクトで次のコマンドを実行して、.nuspec ファイルを作成しました。
nuget spec
2:結果の 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>Security Core Impl</description>
<releaseNotes>Security Core Impl</releaseNotes>
<copyright>Copyright 2013</copyright>
<tags>Security Core</tags>
</metadata>
<files>
<file src="**\*.dll" target="lib\net40\" exclude="**\*.sql;" />
</files>
</package>
3:次のコマンドを実行して、.nupkg をビルドします。
nuget pack -Prop Configuration=Release
ただし、このパッケージを別のプロジェクトにインストールすると、.sql ファイルが含まれます。上記の除外のいくつかのバリエーションを試し、-Exclude スイッチを試しました。何も機能していないようです。
すべての .sql ファイルは次のようにマークされています。
- ビルド アクション: なし
- 出力ディレクトリにコピー: コピーしないでください
また、Visual Studio オプションを使用して NuGet キャッシュをクリアしようとしました。
注: NuGet パッケージはプライベート サーバーでホストされています。