构建模式始终是调试

Posted

技术标签:

【中文标题】构建模式始终是调试【英文标题】:Build mode is always debug 【发布时间】:2010-09-07 14:21:06 【问题描述】:

我有一个 ASP.NET 应用程序,我正在尝试在发布模式下构建,但经过检查 (Assembly Information),它始终显示在调试模式下。我还更改了 Web.config 条目以指定编译模式不应该是调试,但仍然没有运气。有谁知道如何让我的构建进入发布模式?

编辑:项目是 VB.NET。

【问题讨论】:

项目使用什么语言? 您在寻找正确的 DLL 吗?不确定 ASP.NET 是如何做到的,但 Release 构建版本会转到另一个目录(bin\Release 而不是 bin\Debug)。 我尝试创建一个简单的类库解决方案并在发布模式下构建它。程序集进入发布目录,但是当我使用上面发布的应用程序和我自己的应用程序检查程序集时,构建模式显示调试,即使它位于发布目录中。有任何想法吗?感谢您迄今为止的帮助。 【参考方案1】:

Build 菜单中,选择Configuration Manager。在那里你可以将Active solution configuration 更改为Release 而不是Debug

另一种方法是获取项目的Properties,选择Build 选项卡,然后为项目的Configuration 选择Release

【讨论】:

我在构建菜单中选择了发布。有一个用于构建调试或发布的下拉菜单,我选择了发布。 在Configuration Manager中,当你选择Release后,下面列表中的所有项目是否都设置为Release? 很好,虽然我有一个单独的项目解决方案,我已经设置为在发布模式下构建,当我使用实用程序检查它时(我没有检查实用程序的源代码,但我确实有我自己的应用程序来检查是否启用了 JITTracking)构建模式仍然显示调试。我已经清理了解决方案并重建了,没有骰子。我还缺少什么吗? IsJITOptimizerDisabled 我相信是对 Release 的检查,但我认为 IsJITTrackingEnabled 也应该是 false。对于您的项目构建属性,是否选中了“优化代码”复选框? 如果您指的是“属性/编译/高级编译选项”,我已选中“启用优化”。感谢您到目前为止的帮助。还有其他想法吗?【参考方案2】:

我们遇到了同样的问题。该项目设置为内置发布,以及包含的解决方案。它甚至将 dll 吐出到发布文件夹 - 但经过检查,它是一个调试版本。我在项目的高级编译器设置中找到了解决方案。当 Generate debug info 设置为 none 以外的任何值时会出现 - 项目始终以调试模式构建。

将此设置更改为无以解决问题。

【讨论】:

【参考方案3】:

我在上面发布的 Assembly Information 应用程序看起来不像我预期的那样工作。我在 AssemblyInfo.vb 文件中添加了代码,我可以看到我的程序集是在发布模式下构建的,但应用程序却说它是一个调试版本。也许该应用程序在较旧或较新版本的 .NET 上运行得更好,但它不适合我。

【讨论】:

以上是关于构建模式始终是调试的主要内容,如果未能解决你的问题,请参考以下文章

我们可以使用 conda 获得一个以调试模式构建的 python 环境吗?

使用调试模式构建时,凭据提供程序 DLL 无法正确加载

GCC C++11 调试构建,发布失败

在调试模式下构建 Flutter 应用程序时,Gradle 详细日志在哪里?

php 为管理员设置调试构建器模式

php 为管理员设置调试构建器模式