Cursor (opens new window) 是基于VS Code (opens new window)开发的一款编辑器,支持多种语言的开发编辑。与传统的开发工具相比,它有多种优势:与AI (opens new window)无缝集成,响应速度快,占用内存小。但很多同学在"起步"过程中遇到了一点点问题,导致起步不成功。本文描述一些实用的小技巧,帮助大家快速用Cursor开启AI生涯。
# 一、cursor下载
下载Cursor
https://www.cursor.com/ (opens new window)
备注:使用cursor需要收费,且费用颇高
支付方式可以使用 Wildcard 虚拟信用卡
https://blog.csdn.net/qq_33146717/article/details/145172851
或者免费版用15天,然后换一个邮箱。
# 二、安装插件
刚下载的cursor几乎没有任何功能,需要用安装插件的方式来把一个cursor组装为Java开发平台。切换到插件搜索下载即可。

建议安装插件清单:为了实现和idea基本一致的开发体验,建议安装如下插件。
background
Chinese(Simplified)(简体中文) Language Pack for Visual Studio Code
Debugger for Java
Draw.io Integration
Extension Pack for Java
GitLens — Git supercharged
Gradle for Java
Image preview
indent-rainbow
Language Support forJava(TM) by Red Hat
Markdown All in One
Markdown Preview Enhanced
Material Icon Theme
Maven for Java
Project Manager for Java
Project Manager
Prettier - Code formatter
Test Runner for Java
Todo Tree
VS Code Counter
vscode-pdf
XML Tools
建议屏蔽的插件:
java:oracle版本,有一堆java11以上版本的有创新但是生产环境用不到的功能。
# 三、常用快捷键
快捷键
查看类源码:Command+鼠标左键
快捷键命令搜索:Command+Shift+P+命令名称
按文件名搜索文件:Command+P
git相关:Command+T
注释代码:Command+/
开启/关闭侧边栏:Command+B
全局查找并替换:Command+Shift+F
文件内查找:Command+F
格式化代码:Shift+Option+F
缩放/打开一个大括号:Command+.
复制当前行代码:Command+D
打开AI窗口: Command+Shift+L
# 四、建议配置
vscode的配置项目很多。为了快速启动项目,推荐下面的懒人配置。
**4.1、settings.json
settings.json是关于整个项目的:启动内存,编辑器样式,自动编译等配置。
一般位于项目的.vscode/settings.json
{
// Java相关设置
"java.jdt.ls.vmargs": "-XX:+UseParallelGC -XX:GCTimeRatio=4 -XX:AdaptiveSizePolicyWeight=90 -Dsun.zip.disableMemoryMapping=true -Xmx16G -Xms2G -Xlog:disable", // 设置内存大小
"java.debug.settings.onBuildFailureProceed": true, // 构建失败继续:开启
"java.autobuild.enabled": false, // 启动窗口、打开文件夹、保存文件时的自动编译开关
"java.debug.settings.forceBuildBeforeLaunch": false, // Debug启动时自动编译:关闭
"java.debug.settings.hotCodeReplace": "auto", // Debug自动加载修改后的类
"java.compile.onSave": true, // 保存时自动编译:开启
"java.compile.nullAnalysis.mode": "disabled", // Null分析:关闭
"java.dependency.packagePresentation": "hierarchical", // JAVA项目层级展示
// 编辑器设置
"editor.unusedImports.severity": "ignore", // 未使用导入:忽略
"editor.showUnused": false, // 未使用变量:隐藏
"editor.fontFamily": "JetBrains Mono, Consolas, 'Courier New', monospace", // 设置字体为JetBrains Mono
"editor.fontSize": 13, // 设置字体大小为13
"editor.lineHeight": 1.2, // 设置行高为1.2
"editor.formatOnSave": true, // 保存时自动格式化代码
"editor.formatOnType": true, // 输入时自动格式化
"editor.quickSuggestions": {
"other": true,
"comments": false,
"strings": true
}, // 智能感知
"editor.suggestSelection": "first", // 智能感知选择
// 文件设置
"files.autoSave": "afterDelay", // 自动保存:延迟
"files.autoSaveDelay": 1000, // 自动保存延迟时间:1000毫秒
// 终端设置
"terminal.integrated.shell.osx": "/bin/zsh", // 设置集成终端使用的shell
// 主题和颜色设置
"workbench.colorTheme": "Default Dark+", // 主题设置为深色
"workbench.colorCustomizations": {
"peekView.border": "#808080", // Peek References窥视试图边框颜色
"peekViewEditor.background": "#1e1e1e", // 代码编辑区背景
"peekViewResult.background": "#1e1e1e", // 结果列表背景
"peekViewTitle.background": "#1e1e1e" // 标题背景
},
"workbench.iconTheme": "material-icon-theme", // 使用material图标主题
// 快捷键设置
"keyboard.dispatch": "keyCode", // 使用IntelliJ IDEA风格的快捷键
// Prettier格式化设置
"prettier.singleQuote": true, // 使用单引号代替双引号
"prettier.trailingComma": "all", // 在多行对象和数组中添加尾随逗号
// 版本控制
"git.autofetch": true, // 自动获取更新
// 调试
"debug.inlineValues": "on", // 显示内联变量值
// 自动导入
"typescript.autoImportSuggestions.enabled": true // 启用自动导入
}
4.2、launch.json
launch.json是关于项目可启动应用的配置。位于.vscode/launch.json
下面是一个我所在us团队启动应用的示例,关键参数在于projectName、mainClass、args。
{
"version": "0.2.0",
"configurations": [
{
"type": "java",
"name": "Launch Java Program",
"projectName":"us-start",
"request": "launch",
"mainClass": "com.amap.us.start.Application",
//"preLaunchTask": "mvn clean install",
"args": "--spring.profiles.active=testing,gray8",
"vmArgs": "-Xms516M -Xmx2048M -Djps.track.ap.dependencies=false -Dspring-boot.run.fork=false"
}
]
}
配置完成之后,即可在运行窗口启动项目进行调试等操作。

4.3、启动窗口、打开文件夹、保存文件时的自动编译-自动编译选项
如果你遇到了"打开cursor很耗时,需要3-5分钟甚至更久"的问题,这个配置很适合你。
settings.json
//启动窗口、打开文件夹、保存文件时的自动编译开关
//影响启动速度,如有需要可启动后再手动打开
//打开后,启动窗口,打开文件夹时会编译一次项目,耗时1.5-5分钟
//因此不建议打开
"java.autobuild.enabled": false,

4.4、选择JDK
command+shift+p 搜索classpath


建议选择1.8.0_300以上版本。如果启动报错 diamond serverlist 未加载成功,是jdk版本太低,如果启动报错duplicateKey[bizId,scenario],需要手动重新编译gbf。
4.5、debug配置-应用启动前的强制自动编译
如果你想『debug』的时候,代码改动后立即热部署生效,可以尝试如下配置。

等价于配置
//启动窗口、打开文件夹、保存文件时的自动编译开关
//影响启动速度,如有需要可启动后再手动打开
"java.autobuild.enabled": true,
//debug应用启动自动编译:打开
//如果打开,则应用启动前需要编译整个项目,耗时1.5-5分钟
//建议手工编译,可提升启动速度
"java.debug.settings.forceBuildBeforeLaunch": true,
//denig自动加载修改后的类
"java.debug.settings.hotCodeReplace": "auto",
4.6、清空缓存--很有用
在项目运行期间,偶然会遇到项目崩溃,例如:
在项目中新建了一个maven的module,但是pom.xml的格式不正确,导致maven组件运行崩溃。
此时:重启cursor也不管用,表现是:无法打开文件,无法运行插件,无法浏览git历史,无法和ai对话。
解决办法:找到缓存文件夹,删掉缓存文件,再重启cursor。
缓存文件夹目录地址
~/Library/Application Support/Cursor/User/workspaceStorage
例如我的地址
/Users/kanmars/Library/Application Support/Cursor/User/workspaceStorage
删除文件位置:

问题表现:

4.7、转化为大写-小写 设置快捷键
command+shift+p 搜索转化为大写/小写。


我的习惯是绑定 cmd+shift+u为大写,cmd+shift+m为小写。
4.8、编译单个文件
方法一:打开自动编译开关java.autobuild.enabled=true
但启动窗口,打开文件夹时都会编译整个项目,耗费1.5-5分钟。
方法二:maven增量编译
经了解资料,maven并不支持增量编译,但支持按模块编译。
mvn compile -DskipTests -pl <模块名称>,可以避免编译整个项目。
方法三:task。未实验成功
https://blog.51cto.com/u_16213457/12958417 (opens new window)
建议:方案一 日常情况下关闭自动编译开关,如果确实需要本地debug的,再打开此开关。
4.9、maven如何始终跳过测试

idea使用maven编译时可以关闭testCase避免每次打包自动运行测试用例,vscode也有同等能力,在设置中查找maven配置(@ext:vscjava.vscode-maven),添加选项:-DskipTests。


4.10、主题-建议用深色visualStudio

原因:点击某个方法的调用方的区别(窥视视图)

默认 cursor dark

使用深色visualStudio,略微的有个浅色的提示框。
4.11、修改窥视视图颜色
cmd+点击方法,查看调用链颜色太浅了,看不清楚。可以手工修改颜色。
settings.json中需要加入如下配置:
"workbench.colorCustomizations": {
"peekView.border": "#FF0000", // 边框颜色
"peekViewEditor.background": "#330099", // 代码编辑区背景
"peekViewResult.background": "#3300CC", // 结果列表背景
"peekViewTitle.background": "#FF0000"// 标题背景
}
# 五、常见操作
5.1、git
提交记录

缺陷:idea可合并多次提交,查看变更。
而git graph只能查看单个提交的变更。
代码比对

单个文件比对

5.2、返回上一次command+点击的位置
默认:control+-
可以command+shift+p搜索『返回』,修改为习惯的快捷键。

例如command+option+左箭头。
# 六、cursor-rules
可以定制cursor的AI运行时的规则,位于.cursor文件中。
rules可以作为一种预设的规则,为AI提出:运行指导、限制规范。帮助我们更好地完成目标。
示例:
https://juejin.cn/post/7471044704647053353 (opens new window)
https://cursorrulescn.oosakana.com/ (opens new window)
https://blog.csdn.net/heiyeshuwu/article/details/145951789 (opens new window)
# 七、MCP
通过mcp可以接入很多有意思的工具,为日常工作提效。例如接入mcp-server-playwright工具,替你完成:"打开浏览器,打开日志查询平台,根据gsid查询到一条日志,再把日志复制到debug平台的页面中,运行debug平台,获取日志,排查问题,给出结论"等一套完整的"日志排查"工作。

推荐mcp搜索网站:http://mcp.so (opens new window)
好用的mcp推荐:
- 浏览器:https://github.com/executeautomation/mcp-playwright (opens new window)
- 文件:@modelcontextprotocol/server-filesystem
- 知识图谱记忆:@modelcontextprotocol/server-memory
beyond资料
https://github.com/modelcontextprotocol/servers (opens new window)
https://smithery.ai/server (opens new window)
https://cursor.directory/ (opens new window)
https://github.com/punkpeye/awesome-mcp-servers (opens new window)
https://mcp.so/ (opens new window)
# 八、最后加两句
cursor是AI时代的研发工具,作为『研发工具』,它给了我们一个机会,去结合AI做一些事情。比如:业务分析,整合创新,研发提效等。
本文只是『如何启动cursor并能简单使用』的一个"如何起步"的简单说明。如何『用工具创造价值』还有待后续补充。
多模态数据信息提取
随着信息技术的快速发展,数据的获取与处理变得尤为重要。本方案提供多模态文件信息抽取能力,通过先进的人工智能技术,能够识别和解析各种格式的文件,包括文本、图像、音频和视频,从而提取出有价值的信息,大幅提升数据处理效率。
点击多模态数据信息提取 (opens new window)查看详情。