我使用1.4版本并收到此错误:
The remote name could not be resolved: go.microsoft.com
Run Code Online (Sandbox Code Playgroud)
以下是nuget包的URL:
https://go.microsoft.com/fwlink/?LinkID=206669
Run Code Online (Sandbox Code Playgroud)
我错过了什么吗?几个星期前它工作得很好.
我想创建/通过Visual Studio生成过程中推动NuGet包的解释在这里.
建筑包很容易:
<Exec WorkingDirectory="$(ProjectDir)" Command="$(NuGetApp) pack $(ProjectFile) -OutputDirectory $(Deploy) -Verbose -Prop Configuration=Release"/>
Run Code Online (Sandbox Code Playgroud)
我在$(Deploy)文件夹中看到.nupkg文件.
但是为了能够推动它,我需要$(AssemblyVersion)来使用它:
<Exec Command="$(NuGetApp) push $(ProjectName)$(AssemblyVersion) -s $(NugetServer) $(NugetKey)" />
Run Code Online (Sandbox Code Playgroud)
我尝试使用XMLRead来获取值,但NugetSpecFile中的值是"$ version $"而不是AssemblyInfo.cs中的版本.
<XmlRead XPath="/package/metadata/version" XmlFileName="$(NuSpecFile)">
<Output TaskParameter="Value" PropertyName="AssemblyVersion" />
</XmlRead>
Run Code Online (Sandbox Code Playgroud)
如何访问版本,以便在"nuget push"中使用它?
也许我在做错事或在这里表达纯粹的无知,但我真的不知道Nuget包是如何有益的?我最近决定安装一些Nuget包来替换我的应用程序中的静态DLL.当我检查由包创建的文件夹时,它们似乎包含许多不同版本的DLL,它们都嵌套在子目录数组下.
难道不是所有这些文件(其中许多似乎是冗余的)会增加应用程序的整体大小并减慢发布和部署例程吗?还应将哪些项目放入源代码管理中?
就像我说的那样,我可能会在这里遗漏一些东西,但任何人都可以了解Nuget包的优点吗?我开始认为bin文件夹中的一个简单的DLL工作得很好吗?
我在teamcity中使用NUGET Pack来构建一个包.但它正在创建以下错误.我正在使用nuget teamcity 2.2.1版.
Step 2/2: Build Package (NuGet Pack) (14s)
[12:10:40][Step 2/2] Cleaning Z:\hgbuilds\IT\Build\packages
[12:10:40][Step 2/2] pack: Create NuGet package from UI\UI.Tour\UI.Tour.Web\UI.Tour.Web.csproj (14s)
[12:10:40][pack] NuGet command: C:\BuildAgent\tools\NuGet.CommandLine.2.2.1.nupkg\tools\NuGet.exe pack Z:\hgbuilds\IT\UI\UI.Tour\UI.Tour.Web\Calrom.UI.InclusiveTour.Web.csproj -OutputDirectory Z:\hgbuilds\IT\Build\packages -BasePath Z:\hgbuilds\IT -Verbose -Version 1.0.0.7 -Symbols -Properties Configuration=Deploy-Test
[12:10:40][pack] Starting: C:\BuildAgent\temp\agentTmp\custom_script2086270793558421822.cmd
[12:10:40][pack] in directory: Z:\hgbuilds\IT
[12:10:45][pack] WARNING: Option 'Verbose' has been deprecated. Use 'Verbosity' instead.
[12:10:45][pack] Attempting to build package from 'UI.Tour.Web.csproj'.
[12:10:45][pack] Packing files from 'Z:\hgbuilds\IT\UI\UI.Tour\UI.Tour.Web\bin'.
[12:10:46][pack] WARNING: Description was not specified. Using 'Description'.
[12:10:48][pack] content
[12:10:54][pack] …Run Code Online (Sandbox Code Playgroud) 我正在尝试将一堆特定文件夹中的文件复制到nuget包的根目录中.这是它在我的nuspec文件中的样子:
<files>
<file src="dist/product1/**/*.*" />
</files>
Run Code Online (Sandbox Code Playgroud)
我想将dist/product1下的文件复制到nuget包的根目录,而是将所有文件转到nuget文件中的dist/product1文件夹,这意味着它保留了文件夹结构.我尝试了很多变化.有任何想法吗?
我从.NET4.0 DLL创建了一个NuGet包,其中包括混合(托管和本机)代码.
Native代码打包在.NET4.0 DLL中,但依赖于Visual C++ 2013 Redistributable
我正在尝试集体讨论如何使用NuGet包打包redist和/或警告用户他们需要它,但我正在画一个空白.
有人有任何想法吗?
我正在构建一个应用程序,并且有一百个这样的警告:“跳过TPProject.Resource.Drawable.ic_collapse_00000。请检查您的Nuget软件包版本是否兼容。”
我的编译/目标框架是Android 8.0,目标Android版本是6.0,最低Android版本是5.1。我已经将所有Nuget软件包更新为最新版本。
怎么了??
我正在尝试Microsoft.Net.Compilers.1.0.0使用Nuget Package Manager在VS 2017中安装/重新启动.在输出中,它显示恢复已完成.但是,当我检查packages文件夹时,我没有看到Microsoft.Net.Compilers文件夹.并且因为我得到了错误
严重级代码说明项目文件行抑制状态错误此项目引用此计算机上缺少的NuGet程序包.使用NuGet Package Restore下载它们.有关详细信息,请参阅http://go.microsoft.com/fwlink/?LinkID=322105.丢失的文件是....\packages\Microsoft.Net.Compilers.1.0.0\build\Microsoft.Net.Compilers.props.XXXXX\Src\Api\Api.csproj 296
在csproj文件中,顶部有一行
<Import Project="..\..\packages\Microsoft.Net.Compilers.1.0.0\build\Microsoft.Net.Compilers.props" Condition="Exists('..\..\packages\Microsoft.Net.Compilers.1.0.0\build\Microsoft.Net.Compilers.props')" />
Run Code Online (Sandbox Code Playgroud)
背景
此问题发生在具有目标框架4.6.2的Web API项目中.我也有NET Standard 1.4我想与不同类型的.NET应用程序共享的库.当我添加NET Standard LibraryWeb API项目的引用时,我错过了依赖项问题.所以根据我的建议我编辑.csproj文件并添加
<RestoreProjectStyle>PackageReference</RestoreProjectStyle>
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
Run Code Online (Sandbox Code Playgroud)
这解决了缺少的依赖问题.
然后我删除package.config文件,从packages文件夹中删除所有包并添加回所有包(除了我无法添加Microsoft.Net.Compilers).包引用现在位于.csproj文件中
有SO张贴在这里,但在我的情况下Microsoft.Net.Compilers甚至不得到恢复到packages文件夹中.VS 2017显示恢复完成但我不知道它实际上在哪里处理文件.(除非文件夹名称与Microsoft.Net.Compilers不同)
我原来的package.config文件有这一行
<package id="Microsoft.Net.Compilers" version="1.0.0" targetFramework="net462" developmentDependency="true" />
Run Code Online (Sandbox Code Playgroud)
现在我的.csproj文件
<PackageReference Include="Microsoft.Net.Compilers">
<Version>1.0.0</Version>
</PackageReference>
Run Code Online (Sandbox Code Playgroud)
更新1
因此,当启用packagereference时,nuget将在C:\Users\{username}\.nuget\packages文件夹中 安装软件包
这意味着我需要使用正确的相对路径更新csproj文件.
这个包文件夹的相对路径是什么?
nuget nuget-package nuget-package-restore visual-studio-2017 .net-standard
如果一个库(例如,在github上)没有通过nuget包发布自己,我必须手动将其作为参考包含,对吗?我看到很多关于如何为Visual Studio添加项目引用的参考文章,但我似乎无法弄清楚如何在Visual Studio Code上做到这一点.
在这种情况下,我已经下载了库的zip,并将展开的文件夹移动到我的项目中,然后尝试了using <namespace>,这不起作用.
编辑:
我注意到这个下载的zip包含了一个.nuspec.我可以用这个文件扩展名来导入它在我的项目中吗?
我正在尝试通过 NuGet 包和私有源共享公司内部程序集。此程序集面向 .NET Framework 4.6.1。我希望这些 NuGet 包在发布版本期间从 Visual Studio 自动打包。我看到我可以添加<GeneratePackageOnBuild>true</GeneratePackageOnBuild>到 .csproj。我不确定这是否是 .NET Standard 特定的属性,但它似乎部分起作用。但是,当我构建时,我得到
error MSB4044: The "GetPackOutputItemsTask" task was not given a value for the required parameter "PackageOutputPath".
Run Code Online (Sandbox Code Playgroud)
我一直在尝试学习如何从 Visual Studio 中传递这个参数,但我没有看到很多关于参数的文档,除非从命令行手动调用它。有没有一种简单的方法可以从 Visual Studio 中做到这一点?我这样做是错误的吗?
编辑:这是使用 .NET Framework 类库。我可以从命令行运行 pack 命令,为它提供所需的参数/p:PackageOutputPath="path\here"。看起来这可能是为 .NET Core 和 Standard 项目设计的,而 Visual Studio 可能无法处理打包 .NET Framework 项目。
nuget-package ×10
nuget ×7
msbuild ×3
.net ×2
asp.net ×1
assemblyinfo ×1
c# ×1
c++ ×1
nuget-spec ×1
package ×1
teamcity ×1
visual-c++ ×1
xamarin ×1