sjtug/SJTUThesis · 上手攻略

  • 仓库:sjtug/SJTUThesis
  • 链接:https://github.com/sjtug/SJTUThesis
  • 分类:academic-writing
  • 作者:Jay
  • 更新:2026-08-19

它是什么

SJTUThesis 是上海交通大学学位论文 LaTeX 模板,由 SJTUG(上海交通大学 Linux 用户组)维护的开源项目。其底层依赖的文档类集 SJTUTeX 已收录至 CTAN,意味着用户无需手动下载宏包,通过标准 TeX 发行版即可使用。

该仓库本身是一个用户级示例模板(即写好的完整论文示例),包含公式、表格、算法、参考文献等常用排版示例;核心文档类 sjtuthesis.cls 则在 SJTUTeX 仓库中独立维护。

解决什么问题

写上海交通大学学位论文(本科/硕士/博士)时,学校官方提供 Word 模板,但 LaTeX 社区长期缺乏高质量、易维护的开源替代。SJTUThesis 解决了:

  • 中文论文特殊格式要求(学校徽标、封面、声明、摘要格式)
  • 参考文献国标样式(GB/T 7714)
  • XeTeX / LuaTeX 引擎的中文支持(ctex 集成)
  • 图表浮动体、算法环境、数学公式编号等学术排版细节
  • Overleaf / TeXPage 等在线平台直接使用

快速安装

方式一:Clone 仓库

git clone https://github.com/sjtug/SJTUThesis.git
# 或使用 SJTUG 镜像(国内更快)
git clone https://mirror.sjtu.edu.cn/git/SJTUThesis.git/

方式二:直接下载

下载 master.zip 并解压。

方式三:Overleaf / TeXPage 在线编辑

  • Overleaf:访问 Overleaf 模板页,点击打开即可
  • TeXPage:访问 TeXPage 模板页
  • SJTU LaTeX 文档助手(校内平台):下载最新压缩包,上传后选择 XeLaTeX 编译器

⚠️ 在线编辑器默认使用 pdfLaTeX 编译器,必须切换为 XeLaTeX 才能正确编译本模板。

TeX 发行版要求

SJTUThesis 依赖 SJTUTeX(已上 CTAN),需安装最新版 TeX 发行版。推荐:

  • TeX Live(Windows / Linux / macOS):建议安装完整版,或至少包含以下宏包:sjtutexctexxeCJKlatexmk
  • macOS:MacTeTeX
  • Windows:TeX Live

⚠️ 模板更新频繁,且只维护最新版本。如遇编译错误,优先升级 TeX 发行版和宏包,再查 GitHub Discussion。

核心编译流程

本地编译(推荐)

# 进入项目目录
cd SJTUThesis

# 安装依赖宏包(首次)
tlmgr install sjtutex ctex xeCJK latexmk   # TeX Live 用户

# 编译生成 main.pdf
make all

# 查看字数统计
make wordcount

# 清理中间文件
make clean

# 清理所有生成文件(含 PDF)
make cleanall

VS Code 用户(推荐)

  1. 安装 LaTeX Workshop 扩展
  2. 选择预设 Recipe:latexmk (xelatex)
  3. (可选)在设置中将 latex-workshop.latex.recipe.default 改为 latexmk (xelatex) 设为默认
  4. 直接编译 .tex 文件即可

Windows 用户

项目内置 Compile.bat 脚本:

.\Compile.bat thesis   # 编译生成 main.pdf
.\Compile.bat clean    # 清理中间文件
.\Compile.bat cleanall # 清理所有生成文件
.\Compile.bat wordcount # 统计字数

双击 Compile.bat 即可直接编译。

TeXstudio 用户

项目内置魔术注释,打开 main.tex 后直接点击编译按钮即可,无需额外配置。

模板结构

SJTUThesis/
├── main.tex              # 主文件,修改这里开始写论文
├── body/                 # 论文各章节(摘要、绪论、主体、结论……)
├── figures/              # 图片目录
├── tables/               # 表格目录
├── refs/                 # 参考文献 .bib 文件
├── Makefile              # 编译脚本
├── Compile.bat           # Windows 编译脚本
└── sjtutex.pdf           # SJTUTeX 文档类使用说明(重要参考)

典型适用场景

  1. 上海交通大学本科毕业设计:直接 fork 仓库,按章节填写内容
  2. 硕士/博士学位论文:模板支持本科/硕士/博士不同层次,通过文档类选项切换
  3. 在线协作撰写:Overleaf 版本适合导师在线批注、团队协作
  4. 快速排版论文:不想折腾 Word 样式,直接用 LaTeX 保证格式一致性

坑与注意

坑点 说明
只维护最新版 模板不保留历史版本兼容性,git clone 后发现编译失败 → 先升级 TeX 发行版和 sjtutex 宏包
编译器必须是 XeTeX/LuaTeX 不支持 pdfLaTeX;Overleaf 必须手动切换编译器
中文字体依赖系统 XeTeX 下中文字体依赖系统安装情况,Linux 用户可能需额外配置 xeCJK 字体
Windows 路径含中文 若项目放在含中文路径下,Windows 上可能出现编译问题,建议使用纯英文路径
图片格式 学校要求 PDF 内嵌图片格式;矢量图推荐 EPS/PDF,位图推荐 PNG 300dpi 以上
SJTUTeX 文档类 vs 示例仓库 SJTUTeX 核心在 CTAN 上的独立包,无需 clone SJTUTeX 仓库,正常安装 TeX Live 即可

与同类对比

维度 SJTUThesis ctexart / ctexbook 校内 Word 模板
上海交大格式适配 ✅ 官方封面/声明/摘要全适配 ❌ 需手动配置 ✅ 官方格式
CTAN 收录 ✅ SJTUTeX 已收录 ✅ ctex 收录 N/A
Overleaf 直接使用 ✅ 有官方模板 ✅ 有 ❌ 无
维护活跃度 ✅ SJTUG 持续更新 社区维护,较稳定 学校偶尔更新
参考文献 GB/T 7714 ✅ 内置支持 需额外配置 需手动设置
XeTeX/LuaTeX 支持 N/A

一句话推荐结论

上海交通大学在校生写论文的首选 LaTeX 方案——开源、活跃、已上 CTAN、Overleaf 开箱即用;唯一需要注意的是保持 TeX 发行版为最新版本,以及必须使用 XeLaTeX 编译器。

非交大学生若需要一套成熟的中文学位论文 LaTeX 模板,参考其设计思路(特别是 SJTUTeX 文档类)也很有价值。