网站首页 > 技术文章 正文
Cursor 是基于VS Code开发的一款编辑器,支持多种语言的开发编辑。与传统的开发工具相比,它有多种优势:与AI无缝集成,响应速度快,占用内存小。但很多同学在"起步"过程中遇到了一点点问题,导致起步不成功。本文描述一些实用的小技巧,帮助大家快速用Cursor开启AI生涯。
一、cursor下载
下载Cursor
https://www.cursor.com/
备注:使用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
Chrome Extension Developer Tools
Copy Reference
Debugger for Java
Diff Folders
Draw.io Integration
Extension Pack for Java
GitLens — Git supercharged
Gradle for Java
Image preview
IntelliCode
IntelliCode API Usage Examples
indent-rainbow-blocks
Language Support forJava(TM) by Red Hat
Markdown All in One
Markdown Image
Markdown Image Manage
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以上版本的有创新但是生产环境用不到的功能。
三、常用快捷键
快捷键
查看类源码:Ctrl+鼠标左键
快捷键命令搜索:Ctrl+Shift+P+命令名称
按文件名搜索文件:Ctrl+P
根据类名查找类:Ctrl+T
注释代码:Ctrl+/
开启/关闭侧边栏:Ctrl+B
全局查找并替换:Ctrl+Shift+F
文件内查找:Ctrl+F
修改变量或类名:F2
查找变量或类的引用:Shift+F12
查找接口或方法的实现:Ctrl+F12
格式化代码:Shift+Alt+F
重构抽取变量或方法:Ctrl+Shift+R
回退到上一个操作:Alt+左箭头
前进到下一个操作:Alt+右箭头
提示可能的操作,如变量生成:Alt+.
移动一行代码:Alt+上箭头或Alt+下箭头
删除当前行代码:Ctrl+Shift+K
打开AI窗口: Ctrl+Shift+L
四、建议配置
vscode的配置项目很多。为了快速启动项目,推荐下面的懒人配置。
4.1、settings.json
settings.json是关于整个项目的:启动内存,编辑器样式,自动编译等配置。
一般位于项目的.vscode/settings.json
{
//设置内存大小
"java.jdt.ls.vmargs": "-XX:+UseParallelGC -XX:GCTimeRatio=4 -XX:AdaptiveSizePolicyWeight=90 -Dsun.zip.disableMemoryMapping=true -Xmx16G -Xms2G -Xlog:disable",
//maven视图:分层
"maven.view": "hierarchical",
//构建失败继续:开启
"java.debug.settings.onBuildFailureProceed": true,
//启动窗口、打开文件夹、保存文件时的自动编译开关
//影响启动速度,如有需要可启动后再手动打开
"java.autobuild.enabled": false,
//debug启动时自动编译:关闭
//如果打开,则应用启动前需要编译整个项目,耗时1.5-5分钟
//建议手工编译,可提升启动速度
"java.debug.settings.forceBuildBeforeLaunch": false,
//debug自动加载修改后的类
"java.debug.settings.hotCodeReplace": "auto",
//保存时自动编译:开启
//但似乎此参数无效,实操经验是:
//倘若java.autobuild.enabled为true,则保存后自动编译
//倘若java.autobuild.enabled为false,则保存后不自动编译
"java.compile.onSave":true,
//问题装饰:关闭
"problems.decorations.enabled": false,
//null分析:关闭
"java.compile.nullAnalysis.mode": "disabled",
//未使用导入:忽略
"editor.unusedImports.severity": "ignore",
//未使用变量:隐藏
"editor.showUnused": false,
//自动保存:延迟
"files.autoSave": "afterDelay",
//自动保存延迟时间:1000毫秒
"files.autoSaveDelay": 1000,
//JAVA项目层级展示
"java.dependency.packagePresentation": "hierarchical",
//Peek References窥视试图颜色配置
"workbench.colorCustomizations": {
"peekView.border": "#FF0000", // 边框颜色
"peekViewEditor.background": "#330099", // 代码编辑区背景
"peekViewResult.background": "#3300CC", // 结果列表背景
"peekViewTitle.background": "#FF0000"// 标题背景
}
}
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
建议:方案一 日常情况下关闭自动编译开关,如果确实需要本地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
https://cursorrulescn.oosakana.com/
https://blog.csdn.net/heiyeshuwu/article/details/145951789
七、MCP
通过mcp可以接入很多有意思的工具,为日常工作提效。例如接入mcp-server-playwright工具,替你完成:"打开浏览器,打开日志查询平台,根据gsid查询到一条日志,再把日志复制到debug平台的页面中,运行debug平台,获取日志,排查问题,给出结论"等一套完整的"日志排查"工作。
推荐mcp搜索网站:http://mcp.so
好用的mcp推荐:
- 浏览器:https://github.com/executeautomation/mcp-playwright
- 文件:@modelcontextprotocol/server-filesystem
- 知识图谱记忆:@modelcontextprotocol/server-memory
beyond资料
https://github.com/modelcontextprotocol/servers
https://smithery.ai/server
https://cursor.directory/
https://github.com/punkpeye/awesome-mcp-servers
https://mcp.so/
八、最后加两句
cursor是AI时代的研发工具,作为『研发工具』,它给了我们一个机会,去结合AI做一些事情。比如:业务分析,整合创新,研发提效等。
本文只是『如何启动cursor并能简单使用』的一个"如何起步"的简单说明。如何『用工具创造价值』还有待后续补充。
多模态数据信息提取
随着信息技术的快速发展,数据的获取与处理变得尤为重要。本方案提供多模态文件信息抽取能力,通过先进的人工智能技术,能够识别和解析各种格式的文件,包括文本、图像、音频和视频,从而提取出有价值的信息,大幅提升数据处理效率。
点击多模态数据信息提取-阿里云技术解决方案查看详情。
猜你喜欢
- 2025-07-17 特朗普千亿美元AI项目钱还未到位,科技大佬已吵翻,奥特曼还有自己的小算盘
- 2025-07-17 分享些java学习视频(java自学视频)
- 2025-07-17 SpaceX首次点火Raptor 3发动机,回应质疑者 - 特斯拉Oracle
- 2024-10-22 Oracle 创始人:全球 AI 监控将导致人们更好的行为
- 2024-10-22 oracle中merge into语句详解 oracle merger into
- 2024-10-22 oracle 数据库高效批量更新操作 MERGE INTO
- 2024-10-22 西门子PCS7之电机控制编程 西门子电机调试软件
- 2024-10-22 (Oracle 11g)使用expdp每周进行数据备份并上传到备份服务器
- 2024-10-22 Oracle Access Manager中的漏洞可以让攻击者模拟任何用户帐户
- 2024-10-22 SQL优化思路(以oracle为例) sql优化 oracle
你 发表评论:
欢迎- 611℃几个Oracle空值处理函数 oracle处理null值的函数
- 603℃Oracle分析函数之Lag和Lead()使用
- 592℃0497-如何将Kerberos的CDH6.1从Oracle JDK 1.8迁移至OpenJDK 1.8
- 589℃Oracle数据库的单、多行函数 oracle执行多个sql语句
- 583℃Oracle 12c PDB迁移(一) oracle迁移到oceanbase
- 576℃【数据统计分析】详解Oracle分组函数之CUBE
- 566℃最佳实践 | 提效 47 倍,制造业生产 Oracle 迁移替换
- 558℃Oracle有哪些常见的函数? oracle中常用的函数
- 最近发表
-
- PageHelper - 最方便的 MyBatis 分页插件
- 面试二:pagehelper是怎么实现分页的,
- MyBatis如何实现分页查询?(mybatis-plus分页查询)
- SpringBoot 各种分页查询方式详解(全网最全)
- 如何在Linux上运行exe文件,怎么用linux运行windows软件
- 快速了解hive(快速了解美国50个州)
- Python 中的 pyodbc 库(pydbclib)
- Linux搭建Weblogic集群(linux weblogic部署项目步骤)
- 「DM专栏」DMDSC共享集群之部署(一)——共享存储配置
- 故障分析 | MySQL 派生表优化(mysql pipe)
- 标签列表
-
- 前端设计模式 (75)
- 前端性能优化 (51)
- 前端模板 (66)
- 前端跨域 (52)
- 前端缓存 (63)
- 前端aes加密 (58)
- 前端脚手架 (56)
- 前端md5加密 (54)
- 前端路由 (61)
- 前端数组 (73)
- 前端js面试题 (50)
- 前端定时器 (59)
- 前端获取当前时间 (50)
- Oracle RAC (76)
- oracle恢复 (77)
- oracle 删除表 (52)
- oracle 用户名 (80)
- oracle 工具 (55)
- oracle 内存 (55)
- oracle 导出表 (62)
- oracle约束 (54)
- oracle 中文 (51)
- oracle链接 (54)
- oracle的函数 (58)
- 前端调试 (52)
本文暂时没有评论,来添加一个吧(●'◡'●)