Visual Studio 2017中的Nuget Pack命令

时间:2017-08-02 17:07:24

标签: c# nuget visual-studio-2017 nuget-package

我有一个.core解决方案,其中需要包含一些项目,据我所知,praxis在.core中使用Nuget。对于我在Properties->包中选中的项目“在构建时生成包”。问题是nuget-package放在\ bin \ Debug \下...有没有办法定义覆盖属性,所以它可以放在其他地方?

我试图输入nuget.config:

<configuration>
  <config>
    <add key="repositorypath" value="some path" />
  </config>
</configuration>
没有运气。我也尝试过.csproj:

    <PropertyGroup>
       <TargetFramework>netcoreapp1.1</TargetFramework>
       <PreBuildEvent></PreBuildEvent>
       <PostBuildEvent></PostBuildEvent>
       <GeneratePackageOnBuild>True</GeneratePackageOnBuild>
       <PackageOutputDir> some path </PackageOutputDir>
    </PropertyGroup>

我曾尝试使用OnPostBuild将文件从其位置复制到另一个,但是在postbuild之后似乎触发了package命令...另一个问题是宏中使用的参数不是由系统设置的,它们只是运行时的emty字符串。

我还尝试从命令promt运行,因为在Visual Studio 2017中使用.core和Nuget感觉很麻烦。当从命令promt(nuget pack)运行时,我得到非信息性信息:“无法将System.String类型的对象转换为类型NuGet.Frameworks.NuGetFramework”

我可以做些什么来将我的所有nuget包放在另一个目录中而不是默认设置,因为Visual Studio 2017正在使用...我可以以某种方式覆盖此设置吗?

谢谢!

1 个答案:

答案 0 :(得分:5)

您可以通过在<PropertyGroup>

中设置它来覆盖包输出目录
<PackageOutputPath>..\some-folder</PackageOutputPath>