2017-04-03 210 views
1

VS 2015中的情景。Nuget 3.5Nuget Pack - 找不到剛剛安裝的軟件包

兩個項目。 A和B A創建NuGet包A.(不依賴於其他的NuGet源) 乙安裝NuGet包A. B創建的所有包都擠滿並拷貝到驅動器盤符NuGet包B.

。 Visual Studio有源碼。

將Nuget Package A安裝到B中可以很好地工作。

但是,創造套餐B

找不到 'packageA.nupkg' 時。確保項目已經建成。

我的配置有源代碼,這就是爲什麼它安裝在第一位。

我剛剛安裝了這個軟件包,它位於packages文件夾內,它在packages.config中列出。

任何想法?

<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" /> 
    <PropertyGroup> 
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> 
     <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform> 
     <ProjectGuid>{2E3C3C47-80B4-4B51-9039-438380C9A926}</ProjectGuid> 
     <OutputType>Library</OutputType> 
     <AppDesignerFolder>Properties</AppDesignerFolder> 
     <RootNamespace>LucidOcean.Atlantis.Core</RootNamespace> 
     <AssemblyName>LucidOcean.Atlantis.Core</AssemblyName> 
    <TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion> 
    <FileAlignment>512</FileAlignment> 
    <RestorePackages>false</RestorePackages> 
    <TargetFrameworkProfile /> 
</PropertyGroup> 
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> 
    <DebugSymbols>true</DebugSymbols> 
    <DebugType>full</DebugType> 
    <Optimize>false</Optimize> 
    <OutputPath>bin\Debug\</OutputPath> 
    <DefineConstants>DEBUG;TRACE</DefineConstants> 
    <ErrorReport>prompt</ErrorReport> 
    <WarningLevel>4</WarningLevel> 
</PropertyGroup> 
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> 
    <DebugType>full</DebugType> 
    <Optimize>false</Optimize> 
    <OutputPath>bin\Release\</OutputPath> 
    <DefineConstants>TRACE</DefineConstants> 
    <ErrorReport>prompt</ErrorReport> 
    <WarningLevel>4</WarningLevel> 
    <DebugSymbols>true</DebugSymbols> 
</PropertyGroup> 
<PropertyGroup> 
    <SignAssembly>true</SignAssembly> 
</PropertyGroup> 
<PropertyGroup> 
    <AssemblyOriginatorKeyFile>lucidocean.snk</AssemblyOriginatorKeyFile> 
</PropertyGroup> 
<ItemGroup> 
    <Reference Include="Atlantis.Extensibility, Version=2017.0.0.9, Culture=neutral, PublicKeyToken=ff48a18f294fb322, processorArchitecture=MSIL"> 
    <HintPath>$(SolutionDir)packages\Atlantis.Extensibility.2017.0.0.9\lib\net461\Atlantis.Extensibility.dll</HintPath> 
    <Private>True</Private> 
    </Reference> 
    <Reference Include="AWSSDK, Version=2.3.55.2, Culture=neutral, PublicKeyToken=9f476d3089b52be3"> 
    <HintPath>g:\LucidOceanNugetServer\AWSSDK.2.3.55.2\lib\net45\AWSSDK.dll</HintPath> 
    <Private>True</Private> 
    </Reference> 
    <Reference Include="ICSharpCode.SharpZipLib, Version=0.86.0.518, Culture=neutral, PublicKeyToken=1b03e6acf1164f73, processorArchitecture=MSIL"> 
    <HintPath>g:\LucidOceanNugetServer\SharpZipLib.0.86.0\lib\20\ICSharpCode.SharpZipLib.dll</HintPath> 
    <Private>True</Private> 
    </Reference> 
    <Reference Include="LucidOcean.Atlantis.Core, Version=2017.0.0.3, Culture=neutral, PublicKeyToken=ff48a18f294fb322, processorArchitecture=MSIL"> 
    <HintPath>$(SolutionDir)packages\LucidOcean.Atlantis.Core.2017.0.0.3\lib\net461\LucidOcean.Atlantis.Core.dll</HintPath> 
    <Private>True</Private> 
    </Reference> 
    <Reference Include="LucidOcean.Business, Version=2017.0.0.9, Culture=neutral, PublicKeyToken=ff48a18f294fb322, processorArchitecture=MSIL"> 
    <HintPath>$(SolutionDir)packages\LucidOcean.Business.2017.0.0.9\lib\net461\LucidOcean.Business.dll</HintPath> 
    <Private>True</Private> 
    </Reference> 
    <Reference Include="LucidOcean.Data, Version=2017.0.0.9, Culture=neutral, PublicKeyToken=ff48a18f294fb322, processorArchitecture=MSIL"> 
    <HintPath>$(SolutionDir)packages\LucidOcean.Data.2017.0.0.9\lib\net461\LucidOcean.Data.dll</HintPath> 
    <Private>True</Private> 
    </Reference> 
    <Reference Include="LucidOcean.Data.Utility, Version=2017.0.0.9, Culture=neutral, PublicKeyToken=ff48a18f294fb322, processorArchitecture=MSIL"> 
    <HintPath>$(SolutionDir)packages\LucidOcean.Data.Utility.2017.0.0.9\lib\net461\LucidOcean.Data.Utility.dll</HintPath> 
    <Private>True</Private> 
    </Reference> 
    <Reference Include="LucidOcean.Web.Caching, Version=2017.0.0.3, Culture=neutral, PublicKeyToken=ff48a18f294fb322, processorArchitecture=MSIL"> 
    <HintPath>$(SolutionDir)packages\LucidOcean.Web.Caching.2017.0.0.3\lib\net461\LucidOcean.Web.Caching.dll</HintPath> 
    <Private>True</Private> 
    </Reference> 
    <Reference Include="LucidOcean.Web.Communication, Version=2017.0.0.1, Culture=neutral, PublicKeyToken=ff48a18f294fb322, processorArchitecture=MSIL"> 
    <HintPath>$(SolutionDir)packages\LucidOcean.Web.Communication.2017.0.0.1\lib\net461\LucidOcean.Web.Communication.dll</HintPath> 
    <Private>True</Private> 
    </Reference> 
    <Reference Include="LucidOcean.Web.Layouts, Version=2017.0.0.4, Culture=neutral, PublicKeyToken=ff48a18f294fb322, processorArchitecture=MSIL"> 
    <HintPath>$(SolutionDir)packages\LucidOcean.Web.Layouts.2017.0.0.4\lib\net461\LucidOcean.Web.Layouts.dll</HintPath> 
    <Private>True</Private> 
    </Reference> 
    <Reference Include="LucidOcean.Web.Security, Version=2017.0.0.9, Culture=neutral, PublicKeyToken=ff48a18f294fb322, processorArchitecture=MSIL"> 
    <HintPath>$(SolutionDir)packages\LucidOcean.Web.Security.2017.0.0.9\lib\net461\LucidOcean.Web.Security.dll</HintPath> 
    <Private>True</Private> 
    </Reference> 
    <Reference Include="LucidOcean.Web.Utility, Version=2017.0.0.8, Culture=neutral, PublicKeyToken=ff48a18f294fb322, processorArchitecture=MSIL"> 
    <HintPath>$(SolutionDir)packages\LucidOcean.Web.Utility.2017.0.0.8\lib\net461\LucidOcean.Web.Utility.dll</HintPath> 
    <Private>True</Private> 
    </Reference> 
    <Reference Include="Microsoft.ReportViewer.Common, Version=11.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91, processorArchitecture=MSIL"> 
    <HintPath>g:\LucidOceanNugetServer\Microsoft.Report.Viewer.11.0.0.0\lib\net\Microsoft.ReportViewer.Common.dll</HintPath> 
    <Private>True</Private> 
    </Reference> 
    <Reference Include="Microsoft.ReportViewer.ProcessingObjectModel, Version=11.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91, processorArchitecture=MSIL"> 
    <HintPath>g:\LucidOceanNugetServer\Microsoft.Report.Viewer.11.0.0.0\lib\net\Microsoft.ReportViewer.ProcessingObjectModel.DLL</HintPath> 
    <Private>True</Private> 
    </Reference> 
    <Reference Include="Microsoft.ReportViewer.WebForms, Version=11.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91, processorArchitecture=MSIL"> 
    <HintPath>g:\LucidOceanNugetServer\Microsoft.Report.Viewer.11.0.0.0\lib\net\Microsoft.ReportViewer.WebForms.DLL</HintPath> 
    <Private>True</Private> 
    </Reference> 
    <Reference Include="Microsoft.SqlServer.Types, Version=11.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91, processorArchitecture=MSIL"> 
    <Private>True</Private> 
    </Reference> 
    <Reference Include="Microsoft.Web.Infrastructure, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL"> 
    <HintPath>$(SolutionDir)packages\Microsoft.Web.Infrastructure.1.0.0.0\lib\net40\Microsoft.Web.Infrastructure.dll</HintPath> 
    <Private>True</Private> 
    </Reference> 
    <Reference Include="Newtonsoft.Json, Version=10.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL"> 
    <HintPath>$(SolutionDir)packages\Newtonsoft.Json.10.0.2\lib\net45\Newtonsoft.Json.dll</HintPath> 
    <Private>True</Private> 
    </Reference> 
    <Reference Include="nunit.framework, Version=3.6.1.0, Culture=neutral, PublicKeyToken=2638cd05610744eb, processorArchitecture=MSIL"> 
    <HintPath>g:\LucidOceanNugetServer\NUnit.3.6.1\lib\net45\nunit.framework.dll</HintPath> 
    <Private>True</Private> 
    </Reference> 
    <Reference Include="SimpleImpersonation, Version=2.0.1.27158, Culture=neutral, processorArchitecture=MSIL"> 
    <HintPath>g:\LucidOceanNugetServer\SimpleImpersonation.2.0.1\lib\net40-Client\SimpleImpersonation.dll</HintPath> 
    <Private>True</Private> 
    </Reference> 
    <Reference Include="System" /> 
    <Reference Include="System.ComponentModel.DataAnnotations" /> 
    <Reference Include="System.Configuration" /> 
    <Reference Include="System.Core" /> 
    <Reference Include="System.Drawing" /> 
    <Reference Include="System.Messaging" /> 
    <Reference Include="System.Net.Http" /> 
    <Reference Include="System.Net.Http.Formatting, Version=5.2.3.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL"> 
    <HintPath>g:\LucidOceanNugetServer\Microsoft.AspNet.WebApi.Client.5.2.3\lib\net45\System.Net.Http.Formatting.dll</HintPath> 
    <Private>True</Private> 
    </Reference> 
    <Reference Include="System.Net.Http.WebRequest" /> 
    <Reference Include="System.Runtime.Serialization" /> 
    <Reference Include="System.Security" /> 
    <Reference Include="System.ServiceModel" /> 
    <Reference Include="System.Web" /> 
    <Reference Include="System.Web.Extensions" /> 
    <Reference Include="System.Web.Helpers, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL"> 
    <HintPath>$(SolutionDir)packages\Microsoft.AspNet.WebPages.3.2.3\lib\net45\System.Web.Helpers.dll</HintPath> 
    <Private>True</Private> 
    </Reference> 
    <Reference Include="System.Web.Http, Version=5.2.3.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL"> 
    <HintPath>g:\LucidOceanNugetServer\Microsoft.AspNet.WebApi.Core.5.2.3\lib\net45\System.Web.Http.dll</HintPath> 
    <Private>True</Private> 
    </Reference> 
    <Reference Include="System.Web.Http.WebHost, Version=5.2.3.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL"> 
    <HintPath>g:\LucidOceanNugetServer\Microsoft.AspNet.WebApi.WebHost.5.2.3\lib\net45\System.Web.Http.WebHost.dll</HintPath> 
    <Private>True</Private> 
    </Reference> 
    <Reference Include="System.Web.Mvc, Version=5.2.3.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL"> 
    <HintPath>$(SolutionDir)packages\Microsoft.AspNet.Mvc.5.2.3\lib\net45\System.Web.Mvc.dll</HintPath> 
    <Private>True</Private> 
    </Reference> 
    <Reference Include="System.Web.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL"> 
    <HintPath>$(SolutionDir)packages\Microsoft.AspNet.Razor.3.2.3\lib\net45\System.Web.Razor.dll</HintPath> 
    <Private>True</Private> 
    </Reference> 
    <Reference Include="System.Web.WebPages, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL"> 
    <HintPath>$(SolutionDir)packages\Microsoft.AspNet.WebPages.3.2.3\lib\net45\System.Web.WebPages.dll</HintPath> 
    <Private>True</Private> 
    </Reference> 
    <Reference Include="System.Web.WebPages.Deployment, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL"> 
    <HintPath>$(SolutionDir)packages\Microsoft.AspNet.WebPages.3.2.3\lib\net45\System.Web.WebPages.Deployment.dll</HintPath> 
    <Private>True</Private> 
    </Reference> 
    <Reference Include="System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL"> 
    <HintPath>$(SolutionDir)packages\Microsoft.AspNet.WebPages.3.2.3\lib\net45\System.Web.WebPages.Razor.dll</HintPath> 
    <Private>True</Private> 
    </Reference> 
    <Reference Include="System.Xml.Linq" /> 
    <Reference Include="System.Data.DataSetExtensions" /> 
    <Reference Include="Microsoft.CSharp" /> 
    <Reference Include="System.Data" /> 
    <Reference Include="System.Xml" /> 
</ItemGroup> 
+0

csproj文件中有東西存在或缺失。 如果我創建一個新項目,包含所有相同的代碼文件,引用和包,它將創建包B - 沒有任何問題。 但是,我有超過22個項目,與噸不復雜,我不想重新創建.. –

+0

我可以確認所有軟件包都位於packages文件夾中。 nupkg包含正確的461程序集。 msbuild正在運行工具14 包是否在Solution VS.NET 2015或命令行中運行 –

回答

1

無法找到 'packageB.nupkg'。確保項目已經建成。

這個錯誤應該是無法找到 「程序包A .nupkg」,而不是 「packageB.nupkg」。我對嗎?

如果是,那是因爲包文件夾不在預期位置

您可以檢查PackageA.nupkg是否存在於解決方案文件夾下的packages文件夾中。當nuget pack軟件包依賴於打包的目錄時,應該有一個選項可以通過cmd行覆蓋該配置,但選項-PackageDirectory已將添加到nuget pack命令中,而不是。它打算在版本3.61中添加。欲瞭解更多信息,你可以參考Issue 3378

要解決此問題,可以將包文件夾設置在預期位置,或使用.nuspec文件而不是.xxproj。

希望這可以幫助你。

+0

此錯誤應該無法找到「packageA.nupkg」而不是「packageB.nupkg」。我對嗎? - 是 - 編輯問題。 軟件包*不存在於軟件包文件夾中,並且csproj文件指向正確的位置。 我也加了csproj partial –

+0

@Jonathan Crossland,根據你的csproj文件,「System.Web.Http」和「System.Web.Http.WebHost」包不在預期的位置,所以當你打包項目,nuget找不到這些軟件包。這是nuget的一個已知問題,您需要更新HintPath並將這些軟件包設置爲軟件包。 –

1

我用這個帖子How can .csproj know about its solution?來輸出$(SolutionDir)並發現有差異。

csproj,與.sln文件夾下一級,給我一個$(SolutionDir),這是不正確的,當調用nuget包時b.csproj A.package比B.package高一級, B一下就找不到包文件夾。

文件夾\解決方案\包 文件夾\解決方案\項目A 文件夾\項目B

的MSBuild和Visual Studio 2015年有同樣的問題。

因爲我通過命令行使用msbuild和nuget,並且錯誤「can not find package」中沒有包含它正在查找的文件夾,所以它變成了一個糟糕的問題。

Nuget真的應該輸出更多的pack命令,而不僅僅是找不到packagename。完整的文件夾位置會有幫助。

我將項目移至相同的文件夾深度,並找到了軟件包。 奇怪的是,csproj導入/依賴關係只有.. \的提示,這是不夠好找到包。我認爲VS.NET 2015更新提示位置可能存在問題。

+0

令人煩惱的是,csproj中的工具被設置爲4.0而不是14,這導致我沿着花園路徑前進。當您從較舊的vs.net升級項目時,我會期望與目標平臺一起更新工具。 –

相關問題