【问题标题】:Get publish directory in MSBuild在 MSBuild 中获取发布目录
【发布时间】:2011-01-25 03:23:58
【问题描述】:

我有一个 asp.net mvc 应用程序,我正在使用 Visual Studio 的发布功能发布,我有一个自定义 MSBuild 任务需要我发布到的目录,因此它知道将一些自定义构建文件复制到哪里。 . 我已经尝试过 $(OutDir)、$(PublishDirectory) 和其他一堆...我如何获得这条路径?

【问题讨论】:

    标签: msbuild


    【解决方案1】:

    我能够结合 $(ProjectDir) 和 $(PublishDir) 来获取发布文件夹。但是,我正在发布 SharePoint 应用程序,但我认为它也应该适用于其他情况。

    例如调用程序

    <Exec Command="&quot;$(ProjectDir)\app.exe&quot; &quot;$(ProjectDir)$(PublishDir) &quot;"/>
    

    【讨论】:

    • 发布到本地文件夹时,$(PublishDir) 似乎评估为临时位置。当构建正在进行时(例如,用于 FTP 上传)需要此值时,这可能很有用。如果有人需要知道,$(PublishURL) 会计算为实际的目标文件夹。
    【解决方案2】:

    对我来说有效的是:

    $(PublishUrl)
    

    我得到了我需要的东西:我的发布目录。

    谢谢。

    【讨论】:

    • 谢谢。我有完整的路径使用:$(MSBuildProjectDirectory)\$(PublishUrl)
    【解决方案3】:

    您应该能够使用PackageArchiveRootDir 属性来解决这个问题。其默认值为obj\Debug\Package。因此,如果您需要完整路径,只需将 MSBuildProjectDirectory 与 PackageArchiveRootDir 结合起来,例如:$(MSBuildProjectDirectory)\$(PackageArchiveRootDir)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-04-21
      • 2019-08-12
      • 2011-01-07
      • 1970-01-01
      • 2014-10-16
      • 2014-07-27
      • 1970-01-01
      相关资源
      最近更新 更多