1

Visual Studio OnLine当我有一些类库时,我正在创建一个存储库。我想Nuget在我的私人存储库中创建(打包)并为每个人推送一个包。

在一个项目中,依赖于Microsoft.ApplicationInsights. 如果我在我的计算机上创建一个包,它工作正常。如果我尝试在 Visual Studio Online 上执行相同操作,则会出现错误:

nuget 命令失败,退出代码 (1) 和错误(NuGet.CommandLine.CommandLineException:找不到“Microsoft.ApplicationInsights.2.6.4.nupkg”。确保项目已构建。

这是完整的错误:

NuGet 版本:4.1.0.2450 尝试从“Vu.Common.Logging.AppInsightsEvent.csproj”构建包。MSBuild 自动检测:使用来自“C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\15.0\bin”的 msbuild 版本“15.6.85.37198”。使用选项 -MSBuildVersion 强制 nuget 使用特定版本的 MSBuild。从 'D:\a\1\s\Vu.Common\Vu.Common.Logging.AppInsightsEvent\bin\Release' 打包文件。对元数据使用“Vu.Common.Logging.AppInsightsEvent.nuspec”。添加文件“D:\a\1\s\Vu.Common\Vu.Common.Logging.AppInsightsEvent\bin\Release\Vu.Common.Logging.AppInsightsEvent.dll”打包为“lib\net462\Vu.Common”。 Logging.AppInsightsEvent.dll' 找到 packages.config。使用列为依赖项 NuGet.CommandLine.CommandLineException 的包:找不到“Microsoft.ApplicationInsights.2.6.4.nupkg”。确保项目已经构建。在 NuGet.CommandLine.ProjectFactory.AddDependencies(Dictionary`2 packagesAndDependencies) 在 NuGet.CommandLine.ProjectFactory.ProcessDependencies(PackageBuilder builder) 在 NuGet.CommandLine.ProjectFactory.CreateBuilder(String basePath, NuGetVersion 版本, String suffix, Boolean buildIfNeeded, PackageBuilder builder)在 NuGet.Commands.PackCommandRunner.BuildFromProjectFile(字符串路径)
在 NuGet.CommandLine.PackCommand.ExecuteCommand() 在 NuGet.CommandLine.Command.ExecuteCommandAsync() 在 NuGet.CommandLine.Command.Execute() 在 NuGet.CommandLine.Program.MainCore(String workingDirectory, String[] args)

我的配置很简单。我添加了两个Nuget,第一个是打包我的 nuget,第二个是在存储库中推送它。

我尝试了不同的配置,还手动创建了nuspec文件,但没有结果。

有任何想法吗?打包和部署 nugget 包的正确方法是什么?

Visual Studio 在线

更新

在构建过程中,我看到的错误是这样的:

VSTS 构建错误

然后我尝试在我的本地文件夹上创建相同的包。我只删除了OutputDirectory,NonInteractive和初始路径。我可以毫无问题地创建包。

当地的

4

1 回答 1

0

根据错误消息,您的 nuget 包似乎无法从 url 下载引用的 nuget 包。

而不是使用自定义 nuget 命令,您可以尝试直接使用Package: NuGet扩展并选择Pack NuGet packages并尝试 agian。

在此处输入图像描述

可以启用详细调试模式以通过添加来获取更多详细日志以system.debug=true进行故障排除并缩小问题范围。

于 2018-06-07T16:33:31.020 回答