MSBuild:OutputPath 目录为空

2024-05-04

我想部署我的 ASP.NET MVC 站点并具有以下脚本。

<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <Import Project="..\MyProjName\MyProjName.csproj"/>
  <PropertyGroup>
    <NewInstallDir>C:\DeployFolder\</NewInstallDir>
    <BinDir>$(NewInstallDir)bin\</BinDir>
  </PropertyGroup>
  <Target Name="Build">
    <MSBuild Projects="..\MySlnName.sln"
        Properties="Configuration=Release;Platform=Any CPU;OutputPath=$(BinDir)" />
    <Copy SourceFiles="@(Content->'..\MyProjName\%(RelativeDir)%(FileName)%(Extension)')"
        DestinationFiles="@(Content->'$(NewInstallDir)%(RelativeDir)%(FileName)%(Extension)')" />
    <Copy SourceFiles="@(None->'..\MyProjName\%(RelativeDir)%(FileName)%(Extension)')"
        DestinationFiles="@(None->'$(NewInstallDir)%(RelativeDir)%(FileName)%(Extension)')" />
    <MakeDir Directories="@(Folder->'$(NewInstallDir)%(RelativeDir)')" />
  </Target>
</Project>

大意。

我将二进制文件复制到 C:\DeployFolder (从源获取文件夹结构)。我将 dll 构建到 C:\DeployFolder\Bin (我在源文件夹中没有这个文件夹,所以我需要单独复制它)。

我运行我的脚本 - 一切正常,而不是将 DLL 复制到 OutputPath。相同的脚本适用于其他 ASP.NET MVC 项目。我不知道这种情况出了什么问题。

我通过解决方法完成了这个问题,但我想知道这个脚本有什么问题。


我尝试的第一件事是将已弃用的 $(OutputPath) 替换为 $(OutDir)。从我看到这个错误开始,十有八九是由于请求的平台/配置与特定项目的实际定义方式不匹配造成的。请注意跟踪解决方案文件首选的“Any CPU”(带空格)与 $(Platform) 项目文件中实际使用的“AnyCPU”之间的差异。某些项目向导仅设置“x86”平台或忽略“AnyCPU”,这可能导致输出路径为空。

除此之外,导入项目文件然后构建解决方案(大概包括相同的项目)的方法有点偏离中心。考虑通过导入在项目文件本身中进行所需的部署更改。您可以在正确的位置连接到现有的构建目标,或者添加一个额外的目标。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

MSBuild:OutputPath 目录为空 的相关文章

随机推荐

  • PDF解析提取CheckBox字段值

    我有一个 PDF 文档 想要从 PDF 和 Chackbox 和单选按钮类型字段值中提取内容 PDF 文件的版本为 1 4 Acrobat 5 x 可以从网络浏览器生成 CheckBox appear such types in PDF 我
  • 在 x86 程序集中将整数打印到控制台

    当我在 16 位汇编中添加两个值时 将结果打印到控制台的最佳方法是什么 目前我有这个代码 CODE START mov ax 1 put 1 into ax add ax 2 add 2 to ax current value mov ah
  • 在调试器中枚举 EF6 中的 IEnumerable 会出现“无法评估子项”错误

    我有一个新的 ASP NET MVC 5 项目 并尝试通过 IdentityDbContext 查询代码优先数据库 如果我查询特定的 DbSet 并插入断点 尝试读取 IEnumerable 的内容将导致 VS 2013 告诉我无法评估子级
  • 如何在 C 中将文本文件作为命令行参数

    基本上 我试图接受命令行文本文件 以便当我以 program instructions txt 运行程序时 它会存储指令中列出的值 但是 我在测试当前拥有的内容时遇到了麻烦 因为它给了我错误 分段错误核心已转储 int main int a
  • python virtualenv和flask安装。没有名为flask的模块

    运行基本程序时我不断收到此错误 ImportError No module named flask 这是基本的程序 from flask import Flask app Flask name app route def hello wor
  • Android 中的 FLAG_ACTIVITY_CLEAR_TOP

    有人可以用一种非常简单的方式向我解释一下什么是FLAG ACTIVITY CLEAR TOP意思是 我知道有很多关于它的问题 但没有一个答案令我满意 有人还可以举一个这个标志有用的例子吗 谢谢 请检查以下链接以获取相同的详细信息 http
  • 无法在 Android Studio 中向 Activity_main.xml 添加任何项目

    在 Android Studio 中 我无法在设计视图中将调色板中的任何项目添加到 Activity main xml 中 它只是不允许我拖放它们 知道为什么会发生这种情况吗 这是打印屏幕 根据android studio中用于androi
  • 在运行时替换 Property Setter 方法

    我有许多共享一个公共基类的对象 我希望拦截所有设置属性值的调用 并记录这些值是否已在每个实例的基础上设置 我可以用反射替换运行时属性的 Set 方法吗 一种方法是使属性成为虚拟的 并在运行时通过反射发射创建一个子类来覆盖属性 添加您的代码
  • python-daemon 不记录标准输出重定向

    我在代码中使用 python daemon 其中包含 print 语句 我想将它们发送到一个文件 所以我运行了以下命令 python server py gt gt log out 然而什么也进不去log out 谁能告诉我我需要做什么 T
  • 在php中声明一个对象数组

    如何将 php 中的对象列表声明为私有实例变量 在 Java 中 声明看起来像这样private ArrayList ls构造函数会有这个ls new ArrayList Thanks PHP 动态分配内存 而且它并不关心您在数组中存储什么
  • 在 CSS 规则中重复类名是否会增加其优先级?

    假设我有一个 div li class menu item li 有人可以告诉我是否可以使用li menu item menu item menu item 使这个CSS规则具有更高的优先级 Update 下面是说明这一点的代码 ul li
  • 在 Windows 上使用堆栈安装 SDL2 for Haskell

    我正在尝试将 SDL2 与堆栈一起使用 我跟着这些说明 https www reddit com r haskellgamedev comments 4jpthu windows sdl2 is now almost painless vi
  • 使用 JavaScript 进行 CAPTCHA 验证

    我正在尝试使用 JavaScript 验证验证码 但我找不到任何有关验证码客户端 API 的资源 你有任何文件吗 If you could通过 JavaScript 验证验证码 这意味着在您传递给客户端的代码中可以轻松找到有效代码的方法 这
  • jQuery 对表列重新排序

    我找到了适用于行的各种解决方案 以及适用于普通表列的各种解决方案 但我需要一个允许我拖放 colspan gt 1 的列标题的解决方案 例如 table thead tr th A1 th th A2 th th A4 th th A5 t
  • 事件源和 SQL Server 多个关系表

    我们使用 SQL Server 2016 的事件源 我们有完整的客户产品应用程序 每个应用程序都标记为CustomerId并在事件商店中获取单个指南行项目 这是写入事件存储指南的主要标识符 产品应用程序附带许多不同的关系事物 没有引导 但有
  • SpriteKit:如何使用混合模式在图层中打孔

    我有一个简单的场景 添加了一些元素 现在我想专注于一个带有遮罩的特定元素 在与我想要关注的元素相同的位置切割整个元素 与我们在某些游戏第一次启动时看到的显示某种教程非常相似 基本上我添加了一个全屏层alpha 0 7 因此用户仍然可以看到所
  • ViewPager 中显示多个页面,位置不正确

    我正在尝试实现 Dave Smith 的 PagerContainer 以在我的 ViewPager 中显示多个页面 我已经实现了一个点击监听器来显示页码 但是当我单击左侧页面时 会显示 单击项目 2 消息 项目 0 是正确的 如果我单击中
  • VS Code 中运行代码和不调试运行的区别

    我是 cpp 编程的新手 使用 Visual Studio 代码 我不明白 Ctrl Alt N 运行代码 和 Ctrl F5 运行而不调试 之间有什么区别 Ctrl Alt N Run Code is a shortcut provide
  • 如果我有一些其他编程经验,学习 C++ 的最佳方法是什么? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 只是想知道您对我学习 C 的策略有何看法 虽然我知道掌握一门编程语言需要数年时间 但我只是想尽快达到可以被认为有能力的水平 为什么要快 好吧 当
  • MSBuild:OutputPath 目录为空

    我想部署我的 ASP NET MVC 站点并具有以下脚本