.net-core - Fortify “sourceanalyzer -show-build-ids”现在在成功构建 .NET Core 3.1 x64 后会显示任何构建 ID
问题描述
我有一个包含4个项目的解决方案:控制台netcoreapp3.1,标准类库2.1,工人服务netcoreapp3.1,netcoreapp3.1下的xunit测试项目
我做了:
- 源分析器 -b * -clean
- sourceanalyzer -b X.sln msbuild "C:\x\X.sln" /nologo /v:n /t:Rebuild
- sourceanalyzer -show-build-ids 没有结果
- sourceanalyzer.exe -scan -b x.sln -f "C:\x\Security\x.fpr"
输出:[错误]:无法加载 ID 为“x.sln”的构建会话。有关详细信息,请参阅日志文件。
我正在使用 VS 2019 最新更新版本 16.7.6,Fortify 静态代码分析器 20.1.0.0158(使用 JRE 1.8.0_181)
解决方案
Unable to load build session with ID
如果 Fortify 不支持项目的 .NET Framework 版本,现在许多版本都会引发错误消息。下载并安装最新版本的 Fortify Source Code Analyzer 并再次扫描。请务必先关闭 Visual Studio。
在将 Visual Studio 解决方案从 .NET Core 2.2(又名netcoreapp2.2
csproj)升级到 .NET Core 3.1后发生在我身上netcoreapp3.1
。删除 Fortify 19.2 并安装 20.1 就可以了。但是,在您的情况下,您似乎拥有最新的 Fortify 版本 20.1。
- 验证 Fortify v20.1支持的语言
- 手动删除项目“bin”和“obj”文件夹——即使在清理解决方案之后,一些文件夹仍会保留
- 在日志文件中查找“netcoreapp”(将此处的“20.1”替换为您的强化版本)C:\Users\BGPW38\AppData\Local\Fortify\sca20.1\log - 对我来说,它显示了 .NET Core v2.2 参考而不是我项目的 v3.1 提示我需要升级 Fortify
推荐阅读
- c++ - 使用 C++ 加载 SavedModel - SavedModel 加载标签 { serve }; 状态:失败:未找到
- vue.js - Nuxt Authentication API 调用策略
- swift - 测试是否符合 RawRepresentable 协议并强制转换为 RawRepresentable 协议
- kubernetes - Kubernetes 中的分布式 JMeter 增加堆大小
- android - Ionic 设备准备好不会仅在 Android 上触发
- kotlin - 将列表添加到另一个列表的末尾
- javascript - 是否可以在 dc.js 中使用该折线图的不同颜色部分绘制单个折线图
- reactjs - 反应useRef没有被分配
- javascript - TypeError:无法读取未定义的属性“ss”
- php - PHP - 从多个 CSV 文件中插入多行,在 mysql 中具有一致的列