全局用户设置

command + shift + p

Open user setting json

{
	// 更新设置 - Cursor更新相关配置
	// "update.mode": "none", // 不自动更新
	// "update.enableWindowsBackgroundUpdates": false, // 禁用 Windows 后台更新
	// "update.showReleaseNotes": false, // 不显示发布说明
	// 扩展更新设置 - 控制扩展的更新行为
	"extensions.autoUpdate": false, // 不自动更新扩展
	"extensions.autoCheckUpdates": false, // 不自动检查扩展更新
	"extensions.ignoreRecommendations": false, // 不忽略扩展推荐(允许显示推荐扩展)
	// 界面设置
	"window.commandCenter": 1, // 命令中心显示模式(1表示紧凑模式)
	"editor.fontSize": 15, // 编辑器字体大小
	"workbench.colorTheme": "Gruvbox Dark (Hard)", // 编辑器主题
	"workbench.iconTheme": "material-icon-theme", // 文件图标主题
	// 数据库客户端设置
	"database-client.autoSync": true, // 自动同步数据库连接
	"database-client.openResultsAsVertically": false, // 查询结果横向显示而非纵向显示
	// Java 配置 - 已注释掉的多版本Java运行时配置
	// "java.configuration.runtimes": [
	//     {
	//       "name": "JavaSE-1.8",
	//       "path": "/Library/Java/JavaVirtualMachines/zulu-8.jdk/Contents/Home",
	//       "sources": "/Library/Java/JavaVirtualMachines/zulu-8.jdk/Contents/Home/src.zip",
	//       "default": true
	//     },
	//     {
	//       "name": "JavaSE-11",
	//       "path": "/Library/Java/JavaVirtualMachines/zulu-11.jdk/Contents/Home",
	//       "sources": "/Library/Java/JavaVirtualMachines/zulu-11.jdk/Contents/Home/lib/src.zip"
	//     },
	//     {
	//       "name": "JavaSE-17",
	//       "path": "/Library/Java/JavaVirtualMachines/zulu-17.jdk/Contents/Home",
	//       "sources": "/Library/Java/JavaVirtualMachines/zulu-17.jdk/Contents/Home/lib/src.zip"
	//     }
	//   ],
	// Maven配置
	"maven.executable.path": "/Applications/IntelliJ IDEA.app/Contents/plugins/maven/lib/maven3/bin/mvn", // Maven可执行文件路径
	"maven.settingsFile": "/Users/你的名字/.m2/settings.xml", // Maven配置文件路径
	// Maven终端环境变量设置
	"maven.terminal.customEnv": [
		{
			"environmentVariable": "JAVA_HOME", // 设置Maven使用的Java环境
			// "value": "/Users/你的名字/Library/Java/JavaVirtualMachines/azul-1.8.0_442/Contents/Home"
			"value": "/Users/你的名字/Library/Java/JavaVirtualMachines/temurin-21.0.6/Contents/Home"
		}
	],
	// Kubernetes配置 - 设置K8s工具路径
	"vs-kubernetes": {
		"vscode-kubernetes.helm-path-mac": "/Users/你的名字/.vs-kubernetes/tools/helm/darwin-arm64/helm", // Helm路径
		"vscode-kubernetes.minikube-path-mac": "/Users/你的名字/.vs-kubernetes/tools/minikube/darwin-arm64/minikube" // Minikube路径
	},
	// 自动保存设置
	"files.autoSave": "afterDelay", // 延迟一段时间后自动保存
	"notebook.formatOnSave.enabled": true, // 保存笔记本时自动格式化
	"files.autoSaveWhenNoErrors": true, // 无错误时自动保存
	// 格式化设置
	"editor.formatOnSave": true, // 保存时自动格式化
	"editor.formatOnPaste": true, // 粘贴时自动格式化
	// Java特定配置
	"[java]": {
		"editor.defaultFormatter": "redhat.java" // Java文件默认格式化工具
	},
	"java.format.settings.profile": "/Users/你的名字/devlop/IdeaProjects/main-service/style/code-style-for-eclipse.xml", // Java格式化使用Eclipse配置文件
	// 编辑器界面配置
	"editor.minimap.enabled": true, // 启用代码小地图
	// 文件头部模板设置 - fileheader扩展的配置
	"fileheader.cursorMode": { // 在光标处插入的模板
		"param": "@param ", // 参数注释格式
		"return": "@return ", // 返回值注释格式
		"author": "git config user.name git config user.email", // 作者信息(从git配置获取)
		"create": "${CURRENT_DATE}" // 创建日期(使用当前日期)
	},
	"fileheader.customMade": { // 文件头部的模板
		"author": "git config user.name git config user.email", // 作者信息
		"version": "1.0", // 版本号
		"create": "${CURRENT_DATE}" // 创建日期
	},
	// 差异编辑器设置
	"diffEditor.ignoreTrimWhitespace": false, // 不忽略空白字符的差异
	// 更新通道设置
	"update.releaseTrack": "prerelease", // 使用预发布版本的更新通道
	// GitLens设置
	"gitlens.graph.layout": "editor" // Git图形视图在编辑器中的布局方式
}

Java项目设置

setting.json

关键是"java.autobuild.enabled": false

我用 Idea + cursor 一起开发,如果都开编译就会有问题

vscode 在重构代码方面还是和 idea 有一定差距,如果不是这种情况,就不要特殊改

{
    "[java]": {
        "editor.formatOnSave": true,
        "editor.codeActionsOnSave": {
		        // auto import 会导致import 重排序,格式混乱
            "source.organizeImports": false
        }
    },
    // 是否启用 lombok
    "java.jdt.ls.lombokSupport.enabled": true,
    // 空指针分
    "java.compile.nullAnalysis.mode": "automatic",
    //maven、gradle的配置文件变更后自动更新
    "java.configuration.updateBuildConfiguration": "interactive",
    "java.dependency.packagePresentation": "hierarchical",
    "maven.view": "hierarchical",
    // 启用或禁用自动构建功能
    "java.autobuild.enabled": false
}

其他

Extension Pack for Java Setting 解释