【问题标题】:"Object reference not set to an instance of an object" when building my cloud project构建我的云项目时“对象引用未设置为对象的实例”
【发布时间】:2013-10-10 08:28:59
【问题描述】:

当我使用一堆云项目构建解决方案时,我在输出中看到一条或多条“错误:对象引用未设置为对象的实例”消息。当我尝试运行其中一个云项目时,我收到弹出窗口“存在构建错误。是否要继续并运行最后一次成功的构建”,但错误列表中没有错误并且相同的“错误:对象ref..." 输出中的错误。

当我在我的云项目上单击包时,我会收到一个消息框,其中显示“对象引用未设置为对象的实例”,当我右键单击 -> 云项目中“角色”下项目引用的属性时也是如此。

如果我使用命令行通过 msbuild 构建我的解决方案,我不会收到错误消息。

我尝试重新启动 Visual Studio 以及我的 PC。我还尝试重新安装 Azure 工具(2.1),然后重新安装 Visual Studio。

我的同事现在在 Visual Studio 2013 RC 上遇到了同样的问题。

有人遇到过同样的问题吗?

我搜索过,但只发现发布时有问题的人,解决方法是手动打包。

【问题讨论】:

  • 从今天早上开始我就遇到了完全相同的问题。你有没有找到解决办法。我注意到的另一件事是,如果我在云项目中选择一个角色并单击删除,它会显示“服务定义或服务配置无效 - 请修复这些文件以完成此操作”
  • @EoinCampbell 我在另一个非云项目上工作了几周。回到云项目后,我再也没有遇到同样的问题。我能想到的唯一改变是我安装了 Azure Tool 2.2(尽管我们在项目中仍然使用 2.1)。
  • 谢谢。在过去的几天里,我也更新到了 2.2。原来我的问题与缺少的 diagnostics.wadcfg 文件有关,该文件在我们的 git-ignore 文件中被标记为忽​​略的扩展名。为响应欢呼。
  • 我正在使用 VS2013 和 Azure 工具 2.2。我今天开始随机出现这个问题,重新安装 Azure Tools 2.2 解决了这个问题。感谢您为我指明正确的方向。
  • 我删除了项目,然后重新添加,它似乎清除了它。

标签: visual-studio-2012 azure nullreferenceexception


【解决方案1】:

我遇到了同样的问题。右键单击云服务项目,卸载项目。重新加载。

【讨论】:

  • 这解决了我的问题。一直在与一些 nuget 软件包安装/卸载作斗争,一定是有些不高兴。
  • 这实际上也对我有用!我不知道这会完成什么.. VS 或我假设的工具错误?
  • 修复了它。谢谢!
  • 天哪,这个简单的动作就解决了!
  • 重新启动 Visual Studio 也为我解决了这个问题 - 可能是出于同样的原因。
【解决方案2】:

尝试从云项目中删除角色,重新构建解决方案(如果有错误,请发布它们),然后将角色添加回云项目并重新构建。

【讨论】:

  • 感谢您的回答。我已经删除并重新添加了它,但不是运气。如果我在解决方案中没有云项目的情况下构建,它可以工作。但是,即使解决方案中有云项目并且我选择 Web 应用程序并选择构建,它也可以毫无错误地构建。
  • 您能否无误地打包其他云项目之一?只是这一个特定的云项目吗?
  • 实际上是其中之一。其他人(大约 6 个)给了我同样的错误。尽管有效的方法有时也会失败。我能想到的唯一区别是它是一个更简单的 Web 应用程序(即主页)。
【解决方案3】:

当发布退出并开始收到“找不到对象”错误时,我遇到了类似的问题。 VS2013(在我的情况下)报告“diagnostics.wadcfg”丢失,并且异常地将其存储到不同的目录中。

通过进入项目文件 (.ccproj) 并从 'Project\ItemGroup\Content Include "\diagnostics.wadcfg" 中删除错误条目并重新加载项目 - 一切都恢复了活力。

如果做不到这一点,请对照有问题的项目文件检查工作项目文件是否存在不一致。

【讨论】:

  • 我认为这也发生在我的案例中,但纠正它并没有解决问题。我什至做了一个完全干净的结帐,但它在我的机器上无法运行,而它在我的同事的机器上运行
  • 一个没有签入的 diagnostics.wadcfg 对我来说是问题的原因
【解决方案4】:

您不必删除角色并重新添加它们,这真的很烦人,因为您必须保留 cscfg 和 csdef 文件的内容。而是关闭 Visual Studio,删除解决方案的 .suo 文件,然后重新打开解决方案。

【讨论】:

  • 这实际上对我有用。删除 .suo 文件(顺便说一句,它很大)让我可以打开之前抛出“对象未设置为引用”错误的 Azure 项目的属性页面。
【解决方案5】:

我想让每个人都知道我正在处理一个非常相似的情况,尽管使用的是不同版本的 Azure SDK (1.8)。我有许多使用云服务的项目,我创建了很多次,然后突然无法再打开它们。尝试打开云服务配置 UI 导致“对象未设置为引用”错误。我可以打开实际的 XML 文件,但不能打开 GUI 界面。

我多次尝试重新安装 1.8 SDK 和工具,以及 VS 2012 均无济于事。我终于尝试安装最新的 SDK (2.2),现在我可以打开项目了。不确定在此之前我的系统发生了什么变化,但很高兴我终于能够再次打开我的项目!

【讨论】:

    【解决方案6】:

    我在构建时也遇到了这个错误。解决方案中的项目将独立构建,但构建整个解决方案失败。

    我了解到这些类型的问题通常是由无效的 azure 角色或配置文件引起的。在我的情况下,事实证明另一个分支上的 .cscfg 配置文件重命名已与我的分支合并,但它没有重命名文件 - 因此我分支中的 .ccproj 文件错误地引用了新名称,但只有旧文件名存在在解决方案中。在使用新文件名手动编辑 .ccproj 后,我关闭/重新打开了解决方案,一切都开始工作了。

    【讨论】:

    • 你使用了哪个源代码控制,TFS?
    • @MatthijsWessels 我们正在使用 TFS Online
    【解决方案7】:

    在我的 MVC 项目中创建视图后,我遇到了与 VS2013 express 类似的问题。

    我用 git 恢复了项目,但这并没有解决问题。我还在我的电脑上将项目检查到了不同的位置,但这并没有解决问题。我能够在我的笔记本电脑上检查项目而没有看到这个问题。

    最后,我卸载了 VS2013 express 和所有它的对应版本并重新安装。这解决了这个问题。

    【讨论】:

      【解决方案8】:

      我有这个错误(但没有使用云项目)。结果证明 Perforce (P4V) 使用的字符编码是错误的,它应该是 UTF-8。改成 UTF-8 并重新同步代码后,Visual Studio 能够很好地找到并编译项目。

      【讨论】:

        【解决方案9】:

        也许是一个提示:我在编译 VS2013 Dot42 项目时收到了相同的错误消息 - 意识到这是由于将某些内部类型(在我的情况下为 Enum)的具体值分配给 INullable 变量引起的:

        private SomeClass.SomeEnum? _var1;
        ...
        _var1 = SomeClass.SomeEnum.XY;    // causes compilation error
        

        解决方案是,不要使用 INullable:

        private SomeClass.SomeEnum _var1;
        

        【讨论】:

        • 您的意思可能是Nullable<T> 而不是INullable。这是否导致编译错误,或者在构建输出中是否存在“对象引用未设置为对象的实例”消息?将不可为空的值分配给 Nullable<T> 应该没有任何问题。
        • 是的,抱歉 - 当使用 Nullable 时,构建输出仅以:... 4>C:\Program Files\dot42\Android\dot42.Common.targets(615,5) 结尾:错误:对象引用未设置为对象的实例。 ==========全部重建:3成功,1失败,0跳过==========
        【解决方案10】:

        这些答案都没有帮助我。我决定重新安装 Azure 工具,并注意到我安装了多个版本。我卸载了旧版本,重新安装了最新版本,这为我修复了它。

        【讨论】:

          【解决方案11】:

          我在发布我们的项目时也收到了同样的信息,不过是在 Visual Studio 2010 中。

          对我来说,从 bin 文件夹中删除所有文件是可行的。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2014-09-22
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2012-11-09
            相关资源
            最近更新 更多