Nuget Pack命令,在Visual Studio 2017中
我有一个.core解决方案,其中需要包含一些项目,并且据我了解,praxis使用Nuc核心.core。对于我在属性 - >软件包中选中的项目“在生成时生成软件包”。问题是nuget-package放在\ bin \ Debug \下面有没有一种方法来定义一个重写属性,这样它可以放在其他地方?Nuget Pack命令,在Visual Studio 2017中
我试图把在nuget.config:
<configuration>
<config>
<add key="repositorypath" value="some path" />
</config>
</configuration>
没有运气。我也试图在PU .csproj的:
<PropertyGroup>
<TargetFramework>netcoreapp1.1</TargetFramework>
<PreBuildEvent></PreBuildEvent>
<PostBuildEvent></PostBuildEvent>
<GeneratePackageOnBuild>True</GeneratePackageOnBuild>
<PackageOutputDir> some path </PackageOutputDir>
</PropertyGroup>
我曾尝试使用OnPostBuild从其位置复制到另一个文件,但包命令似乎postbuild后触发...另一个问题是,在使用的参数宏不是由系统设置的,它们在运行时只是emty字符串。
我也尝试从命令promt运行,因为它感觉如此错误在Visual Studio 2017与.core和Nuget。从命令Promt(nuget pack)运行时,我得到非信息性信息如下:“无法将System.String类型的对象转换为类型NuGet.Frameworks.NuGetFramework”
我该怎么做才能将所有的nuget包放入Visual Studio 2017正在使用的默认设置之外的另一个目录...我可以以某种方式覆盖此设置吗?
谢谢!
你可以通过设置这个<PropertyGroup>
内覆盖包输出目录:
<PackageOutputPath>..\some-folder</PackageOutputPath>
感谢您的帮助,Martin和Leos关于更改“魔术字符串”的提示帮助我:) – user3154653
NuGet.exe [不与新样式的csproj文件的工作(https://github.com/NuGet/Home/issues/4491),您必须使用'dotnet pack'或'msbuild.exe/t:pack' –
您应该在.csproj中使用“PackageOutputPath”而不是“PackageOutputDir”。你不能通过构建事件来做到这一点。因为包组件包的目标落后于构建任务。但您可以在项目文件中的此目标“GenerateNuspec”后添加一个自定义副本任务: –