首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在docfx项目中提取元数据错误

在docfx项目中提取元数据错误
EN

Stack Overflow用户
提问于 2020-10-01 12:03:34
回答 1查看 1.3K关注 0票数 2

尽管我阅读了docfx文件,以及许多Github问题,但我无法让docfx项目工作。

采取的步骤:

  1. 初始化根目录docfx init -q
  2. 从根目录docfx build构建(无错误)
  3. 服务docfx "/user/docfx_project/docfx.json" --serve

堆栈跟踪:

代码语言:javascript
复制
Error:Error extracting metadata for /user/docfx_project/src/MyApp/MyApp.csproj,/user/docfx_project/src/MyApp.Tests/MyApp.Tests.csproj: System.NullReferenceException: Object reference not set to an instance of an object
  at Microsoft.DocAsCode.Metadata.ManagedReference.ExtractMetadataWorker.SaveAllMembersFromCacheAsync () [0x00380] in <0779a76130d64c11baa2c8c084cbfe7c>:0 
  at Microsoft.DocAsCode.Metadata.ManagedReference.ExtractMetadataWorker.ExtractMetadataAsync () [0x000c0] in <0779a76130d64c11baa2c8c084cbfe7c>:0 

环境:

  • OSX 10.13.6
  • docfx 2.56.2.0
  • .NET核心SDK (3.1.401)
  • Mono JIT编译器版本6.10.0.104

项目结构:

代码语言:javascript
复制
docfx-project
 |
 +-- _site
 +-- api
 +-- apidoc
 +-- articles
 +-- docfx.json
 +-- images
 +-- index.md
 +-- obj
 +-- src
     |
     +-- MyApp
         |
         +-- MyApp.csproj
 +-- toc.yml

docfx.json:

代码语言:javascript
复制
{
  "metadata": [
    {
      "src": [
        {
          "files": [
            "src/**/**.csproj"
          ]
        }
      ],
      "dest": "api",
      "disableGitFeatures": false,
      "disableDefaultFilter": false
    }
  ],
  "build": {
    "content": [
      {
        "files": [
          "api/**.yml",
          "api/index.md"
        ]
      },
      {
        "files": [
          "articles/**.md",
          "articles/**/toc.yml",
          "toc.yml",
          "*.md"
        ]
      }
    ],
    "resource": [
      {
        "files": [
          "images/**"
        ]
      }
    ],
    "overwrite": [
      {
        "files": [
          "apidoc/**.md"
        ],
        "exclude": [
          "obj/**",
          "_site/**"
        ]
      }
    ],
    "dest": "_site",
    "globalMetadataFiles": [],
    "fileMetadataFiles": [],
    "template": [
      "default"
    ],
    "postProcessors": [],
    "markdownEngineName": "markdig",
    "noLangKeyword": false,
    "keepFileLink": false,
    "cleanupCacheHistory": false,
    "disableGitFeatures": false
  }
}

停下来。

EN

回答 1

Stack Overflow用户

发布于 2021-02-03 17:14:41

我不太清楚这是为什么,但它在我的CI机器上使用的是export VSINSTALLDIR= -换句话说,在运行docfx metadata之前清除VSINSTALLDIR环境变量。我相信这会影响docfx使用的msbuild版本(或至少一些msbuild文件)。

这是对过去的其他问题的一个修正-一个人声称已经修复了一段时间,但同样的解决办法似乎也适用于这个问题.至少在我的电脑里。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64155015

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档