私はあらゆる種類のプロジェクトで非常に頻繁に使用する共通ライブラリについて、セットアップしました。しばらくの間、手動でナゲットパッケージを公開しました:VSTSで自動化した後、Nugetパッケージングが失敗する
nuget pack .\ProjectFolder\CommonProjectName.csproj -Symbols -Build -Properties Configuration=Release
このパッケージを手作業でヌゲットサーバーにプッシュしました。
今私は、このblogitemで説明したようにvNextを構築するVSTSを使用して、この公開を自動化したい:http://www.codewrecks.com/blog/index.php/2015/09/26/publishing-a-nuget-package-to-nugetmyget-with-vso-build-vnext/
私は前と同じnuspecファイルを使用します。
<?xml version="1.0"?>
<package >
<metadata>
<id>Common Library</id>
<version>1.0.0.0</version>
<title>Library Title</title>
<authors>...</authors>
<owners>...</owners>
<requireLicenseAcceptance>false</requireLicenseAcceptance>
<description>...</description>
<releaseNotes>...</releaseNotes>
<copyright>Copyright 2016</copyright>
<tags>...</tags>
<dependencies>
<dependency id="EntityFramework" version="6.1.3" />
<dependency id="log4net" version="2.0.4" />
<dependency id="Microsoft.AspNet.Mvc" version="5.2.3" />
<dependency id="Microsoft.AspNet.Razor" version="3.2.3" />
<dependency id="Microsoft.AspNet.WebPages" version="3.2.3" />
<dependency id="Microsoft.Web.Infrastructure" version="1.0.0.0" />
</dependencies>
</metadata>
</package>
今自動化した後、私は次のエラーを取得しますメッセージ:
説明:アセンブリ 'bin \ Release \ CommonLibrary.dll'は 'lib'フォルダ内にないため、パッケージがプロジェクトにインストールされているときに参照として追加されません。 解決方法:参照する必要がある場合は、 'lib'フォルダに移動します。 問題:libフォルダ外のアセンブリ。
ナゲットサイトのパッケージの表記法のセクションを読みましたが、自動的にこれらの規則に準拠しています。言い換えれば、ビルドされ参照されているDLLをbuidcontrollerの適切な場所にどう取得するのですか?助けのための
おかげで、
敬具、 Luuk Krijnen
エクストラ:WELは私のコンパイルソースをALSとしてFTP私の完全なソースコードを使用してnugetパッケージをダウンロードした後にパッケージに追加されますツリーは私の元のソースコードと似ています。だから私のコンパイルされたDLLは、デ・フォルダ内にあるビン\リリース\