尧图网络科技YAOTU DIGITAL 获取报价
获取报价
首页 / 资讯中心 / 文章详情

ThingsBoard 软著申请必备:用 Code Merger 合并源代码的完整配置与验证

发布时间:2026/9/28 18:51:03

资讯中心
01
ARTICLE

ThingsBoard 软著申请必备:用 Code Merger 合并源代码的完整配置与验证

ThingsBoard 软著申请必备:用 Code Merger 合并源代码的完整配置与验证
1. ThingsBoard 软著申请为什么卡在源代码合并这一步如果你正在给 ThingsBoard 做软著申请大概率会遇到一个很具体的问题材料要求提交源程序前连续 30 页和后连续 30 页还要转成 PDF而 ThingsBoard 的代码分散在lib、android、ios、web等多个目录里单个文件打开复制根本凑不出连续页。我一开始也想过偷懒直接用 Visual Code 导出 PDF试了 Markdown to PDF Export 之类的插件结果格式完全不符合要求页眉页脚、字体、行距全都不对审核那边根本不认。后来转向“先把源代码合并成一个文件再统一排版”的思路。网上流传的老办法是用 NotePad 读取整个目录但实际用下来问题不少插件生态老旧、下载来源不可靠、批量读取大目录时容易卡死。也试过 PrintCode、Print、File Merger 这几个 Visual Code 插件要么功能已废弃要么只能合并不能去注释要么干脆不支持选文件夹。最后真正跑通的是 Code Merger 这个插件它能选文件夹、自动加文件分隔和全路径文件名、去掉注释和空行而且速度很快。这篇就按 ThingsBoard 的实际目录结构把 Code Merger 的安装、配置、合并、验证、排错整条链路写清楚目标是让你产出一个符合软著提交要求的单一源码文件。适合正在准备软著材料、被多模块合并卡住的开发者也适合想批量整理代码做归档的人。2. 前置准备TaoToken 与 Visual Code 环境在动手合并之前先把两件事准备好一个是代码理解与辅助环节一个是编辑器环境。ThingsBoard 的lib目录里文件很多合并后动辄几万行遇到不认识的模块想快速问一下我会用 TaoToken 的模型对话来辅助看代码逻辑它支持多种模型切换适合边合并边理解。TaoToken 的入口很简单官网是 https://taotoken.net/?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content API 地址是 https://taotoken.net/api 。如果你只是想在合并过程中问几个代码问题直接用模型对话就行如果你要长期做编码或 Agent 类任务可以看 Coding Plan需要自己写脚本调接口的话去控制台和 API Keys 页面拿 Key。Visual Code 这边建议用较新版本插件市场能正常访问。Code Merger 的安装不需要额外配置 Node 环境装完即用。这里要提醒一句软著提交的是源代码本身TaoToken 只是帮你理解代码、排查合并问题的辅助工具不要把它当成替代编辑器的方案合并动作还是在 Visual Code 里完成。3. 可复制配置Code Merger 安装与合并骨架3.1 安装 Code Merger打开 Visual Code点击左侧活动栏的扩展图标搜索code merger找到 Code Merger 后点 Install。安装完成后不需要重启但建议重载一次窗口避免右键菜单没刷新出来。3.2 选择 ThingsBoard 的核心目录ThingsBoard 的 App 端核心源码主要在lib目录下。在 Visual Code 的资源管理器里右键点击lib文件夹菜单里会出现 Code Merger 选项。点击后它会扫描该目录下所有源文件按顺序合并并在 OUTPUT 窗口输出结果。这里有个细节Code Merger 默认会去掉注释和空行并在每个文件之间插入分隔线和全路径文件名。这个行为对软著材料很友好因为审核人员能清楚看到文件边界。如果你不想去注释可以在插件设置里关掉对应开关但软著场景建议保留去注释能有效压缩页数。3.3 合并配置骨架Code Merger 的配置项不多但有几个直接影响输出结果。下面是一个适合 ThingsBoard 软著场景的配置骨架你可以在 Visual Code 的 settings.json 里按需调整{ codeMerger.removeComments: true, codeMerger.removeEmptyLines: true, codeMerger.addFileSeparator: true, codeMerger.addFileName: true, codeMerger.fileNameFormat: relative, codeMerger.outputToEditor: true, codeMerger.includeExtensions: [ .dart, .java, .kt, .js, .ts, .html, .css ], codeMerger.excludeFolders: [ node_modules, .git, build, .dart_tool ] }几个参数说明一下。removeComments和removeEmptyLines控制是否去注释和空行软著场景建议都开。addFileSeparator和addFileName决定是否加分隔线和文件名这两个必须开否则合并后无法区分文件来源。fileNameFormat设为relative会输出相对路径比绝对路径更干净。includeExtensions按 ThingsBoard 实际用到的语言列Dart 是主力Java 和 Kotlin 用于 Android 侧JS/TS/HTML/CSS 用于 Web 侧。excludeFolders把依赖和构建产物排掉避免把第三方代码混进去。3.4 合并后的主文件排序合并完成后Code Merger 会把结果输出到 OUTPUT 窗口。这时候不要直接保存先复制到一个新的文本文件里。软著审核希望看到程序调用思路所以主入口文件要放在最前面。ThingsBoard App 的主文件通常是lib/thingsboard_app.dart你可以在记事本里搜索这个文件名把它对应的整段内容剪切到文件最开头。操作顺序是先全选 OUTPUT 内容复制到记事本然后搜索lib\thingsboard_app.dart或lib/thingsboard_app.dart找到它所在的分隔段把这一段整体移到文件顶部。移动时注意保留分隔线和文件名不要破坏结构。4. 验证请求与成功结果合并完成后不能直接拿去转 PDF要先做几项验证确认输出符合软著要求。第一项检查文件分隔是否完整。在合并文件里搜索分隔线确认每个源文件都有独立的文件名标注。如果发现某些文件没有分隔说明addFileSeparator或addFileName没生效回到 settings.json 检查。第二项检查注释和空行是否去掉。随便抽几个文件看原本的//注释和空行是否还在。如果还在说明removeComments或removeEmptyLines没开。第三项检查主文件是否在最前面。搜索thingsboard_app.dart确认它出现在文件开头附近而不是中间或末尾。第四项统计源代码行数。软著申请要填源代码行数把光标移到记事本末尾看总行数并记录下来。这里要注意不同软件统计的行数可能不一致因为换行符处理方式不同。软著申请只填行数不填字符数所以以记事本显示的行数为准即可。第五项确认没有混入第三方代码。搜索node_modules、build、.dart_tool等关键词如果出现说明excludeFolders没生效需要重新合并。验证通过后你就得到了一个符合软著提交要求的单一源码文件。接下来把它转成 Word 或直接排版成 PDF按前 30 页和后 30 页的要求截取即可。5. 本篇常见错排查5.1 右键菜单没有 Code Merger 选项通常是插件没装好或窗口没重载。先确认扩展面板里 Code Merger 显示为已安装然后按CtrlShiftP执行 Reload Window。如果还是没有检查 Visual Code 版本是否过低升级后再试。5.2 合并结果为空或只有几个文件检查你右键的目录是否正确。ThingsBoard 的核心代码在lib如果你右键的是项目根目录可能会因为excludeFolders排除了太多内容。另外确认includeExtensions里包含了.dart否则 Dart 文件会被跳过。5.3 合并后注释还在removeComments默认可能是关的去 settings.json 里显式设为 true。如果设了还是不去检查是否有其他格式化插件在干扰临时禁用再试。5.4 合并速度慢或卡死Code Merger 本身很快卡死通常是因为扫描了node_modules或build这类大目录。确认excludeFolders配置生效或者直接右键lib而不是项目根目录。5.5 行数统计和预期差很多不同编辑器对换行符的处理不同Windows 记事本、Visual Code、Word 统计出来的行数可能有差异。软著申请以你最终提交的 PDF 为准建议在转 PDF 后再核对一次页数确保前 30 页和后 30 页连续。5.6 主文件移动后格式乱了移动时容易误删分隔线或文件名。建议用记事本的剪切粘贴不要用查找替换。移动后搜索确认thingsboard_app.dart在文件开头且前后分隔线完整。6. 接入与排障用 TaoToken 辅助代码理解合并过程中如果遇到不认识的模块或者想确认某个文件的调用关系可以用 TaoToken 的模型对话快速问一下。入口在 https://taotoken.net/?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content 把合并后的代码片段贴进去让它帮你梳理逻辑比自己翻半天快。如果你要写脚本自动化合并流程需要调 API去 API Keys 页面拿 Key接入文档在 https://taotoken.net/api 里有说明。长期做编码或 Agent 任务的话Coding Plan 更适合具体在 https://taotoken.net/?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content 的 Coding Plan 页面看。排障方面Code Merger 的问题基本集中在配置项和目录选择上按第 5 节的清单逐项核对大部分都能解决。如果合并后行数对不上先别急着改代码把合并文件转成 PDF 再数页数以最终提交版本为准。
02
RELATED NEWS

相关资讯

更多网站建设与数字化升级内容

03
WHY YAOTU

想打造同款高转化官网?

懂行业、懂生意,从建站到增长一站式陪跑

◈

场景化定制

不做模板站,围绕你的业务场景量身设计,小众不撞款。

◐

营销型架构

以转化目标组织内容与路径,让官网真正带来询盘。

▲

全周期服务

设计、开发、运营、运维一体,上线只是开始。

免费获取你的建站方案

留下需求,专属顾问 24 小时内为你输出方案建议。