当前位置: 首页 > article >正文

OpenCode + Oh-My-OpenCode 配置指南:集成 GitHub Copilot 模型与 Java LSP (jdtls)

前言最近在研究 AI 辅助编程工具发现了一套非常强大的组合OpenCodeOh-My-OpenCode。它们不仅能调用 GitHub Copilot 等模型还支持灵活配置各种语言的 LSP语言服务器特别是 Java 的 jdtls。本文将详细记录从安装到配置的全过程包括模型设置、LSP 集成和常见问题处理。环境准备操作系统Windows 本文以 Windows 为例macOS/Linux 类似Node.js建议 v18 或更高版本npm 随附PowerShell用于运行安装脚本GitHub Copilot 订阅若使用其模型一、安装 OpenCode 和 Oh-My-OpenCode1. 安装 OpenCodenpm i -g opencode-ai安装完成后可以通过opencode --version检查是否成功。2. 安装 Oh-My-OpenCodenpm i -g oh-my-opencode然后执行安装命令会完成一些初始化配置npx oh-my-opencode installopencode二、模型配置使用 GitHub Copilot 模型OpenCode Oh-My-OpenCode 的模型配置通过oh-my-openagent.json文件完成。该文件位于C:\Users\你的用户名\.config\opencode\oh-my-openagent.json如果文件夹不存在手动创建即可。1. 完整配置示例以下是我实际使用的oh-my-openagent.json包含了多个代理agent和类别category并统一使用github-copilot/gpt-5.4及其变体以及一些备用模型fallback。{ $schema: https://raw.githubusercontent.com/code-yeongyu/oh-my-openagent/dev/assets/oh-my-opencode.schema.json, agents: { sisyphus: { model: github-copilot/gpt-5.4, variant: max, fallback_models: [ { model: github-copilot/gpt-5.4, variant: max }, { model: github-copilot/gpt-5.4 }, { model: github-copilot/gpt-5.4, variant: medium }, { model: opencode/big-pickle } ] }, hephaestus: { model: github-copilot/gpt-5.4, variant: medium, fallback_models: [{ model: github-copilot/gpt-5.4, variant: medium }] } // 其他 agent 类似按需添加 }, categories: { quick: { model: github-copilot/gpt-5.4-mini, fallback_models: [ { model: github-copilot/gpt-5.4-mini }, { model: github-copilot/claude-haiku-4.5 }, { model: github-copilot/gpt-5.4 }, { model: opencode/gemini-3-flash } ] } // 其他 category 类似 } }说明variant表示模型能力级别如 max, high, medium, xhigh。fallback_models是当主模型不可用时依次尝试的模型列表。模型名称格式github-copilot/xxx需要有效的 GitHub Copilot 授权。三、配置 Java LSPjdtlsOpenCode 通过 LSP 提供代码补全、跳转、重构等功能。Java 官方推荐使用jdtlsEclipse JDT Language Server。注意jdk需要配置全局环境且版本不低于211. 下载并安装 jdtls提供了一个 PowerShell 脚本installjdtls.ps1内容如下保存为.ps1文件# install-jdtls.ps1 $installDir $env:USERPROFILE\.local\share\opencode\bin $tempFile $installDir\jdtls.tar.gz New-Item -ItemType Directory -Force -Path $installDir | Out-Null Write-Host Downloading jdtls... Invoke-WebRequest -Uri https://download.eclipse.org/jdtls/milestones/1.57.0/jdt-language-server-1.57.0-202602261110.tar.gz -OutFile $tempFile Set-Location $installDir Write-Host Extracting... tar -xzf jdtls.tar.gz $jdtlsBinDir $installDir\bin $currentPath [Environment]::GetEnvironmentVariable(Path, User) if (-not $currentPath.Contains($jdtlsBinDir)) { [Environment]::SetEnvironmentVariable(Path, $currentPath;$jdtlsBinDir, User) Write-Host Added to PATH: $jdtlsBinDir } Remove-Item $tempFile -Force Write-Host Verifying installation (expected: usage error or missing args)... $jdtlsBinDir\jdtls.bat 21 | Select-Object -First 3执行步骤将上述脚本保存为installjdtls.ps1。在文件资源管理器中进入脚本所在目录地址栏输入powershell并回车。在 PowerShell 中运行.\installjdtls.ps1观察输出。如果出现类似下面的内容其实是成功的Downloading jdtls... Extracting... Added to PATH: C:\Users\Admin\.local\share\opencode\bin\bin Verifying installation... Picked up JAVA_TOOL_OPTIONS: -Dfile.encodingUTF-8 WARNING: Using incubator modules: jdk.incubator.vector这些警告可以忽略只要没有报错“找不到命令”之类的即可。2. 验证 jdtls 是否可用打开一个全新的 PowerShell 窗口使得 PATH 生效运行jdtls -help如果输出帮助信息如Usage: jdtls [-data workspace] ...说明安装成功。3. 在 oh-my-openagent.json 中注册 jdtls在 JSON 配置文件的顶层添加lsp字段内容如下lsp: { jdtls: { command: [jdtls, --stdio], extensions: [.java], priority: 10, env: { NODE_OPTIONS: --max-old-space-size4096 }, initialization: { preferences: { includeInlayParameterNameHints: all } } } }将该段合并到你已有的oh-my-openagent.json中注意 JSON 语法不要遗漏逗号。届时打开任何.java文件OpenCode 就会自动启动 jdtls 提供智能提示。四、其他 LSP 配置以 Vue 为例如果需要前端开发支持可以安装 Vue 的语言服务器npm install -g vue/language-server然后在lsp字段中添加相应配置类似 jdtls。五、常见问题与注意事项1. jdtls 运行报错JAVA_TOOL_OPTIONS或incubator modules这是正常提示不影响使用。如果希望去除可以移除环境变量JAVA_TOOL_OPTIONS或降级 JDK 版本但建议保留。2. PATH 未生效安装完 jdtls 后要关闭并重新打开终端或 PowerShell否则系统找不到jdtls命令。3. 模型无法调用确保已登录 GitHub Copilot可使用github-copilot auth命令验证。检查网络环境部分地区可能需要代理。4. OpenCode Web 界面不显示 LSP 功能确认 JSON 配置文件没有语法错误可用在线 JSON 校验工具。LSP 功能在打开对应文件如.java后才会激活。六、总结本文手把手教会了安装 OpenCode 和 Oh-My-OpenCode配置 GitHub Copilot 模型通过oh-my-openagent.json安装并配置 Java LSPjdtls包括使用 PowerShell 脚本自动安装添加其他 LSP如 Vue现在你可以享受 OpenCode 带来的强大 AI 辅助编程体验了如果遇到问题欢迎在评论区留言交流。

相关文章:

OpenCode + Oh-My-OpenCode 配置指南:集成 GitHub Copilot 模型与 Java LSP (jdtls)

前言最近在研究 AI 辅助编程工具,发现了一套非常强大的组合:OpenCode Oh-My-OpenCode。它们不仅能调用 GitHub Copilot 等模型,还支持灵活配置各种语言的 LSP(语言服务器),特别是 Java 的 jdtls。本文将详…...

Windows 11终极优化指南:5个简单步骤让你的系统飞起来

Windows 11终极优化指南:5个简单步骤让你的系统飞起来 【免费下载链接】Win11Debloat A simple, lightweight PowerShell script that allows you to remove pre-installed apps, disable telemetry, as well as perform various other changes to declutter and cu…...

别让防火墙背锅了!银河麒麟V10外设管理的3个隐藏设置与1个必查命令

银河麒麟V10外设管理进阶指南:精准运维的3个关键策略与1个核心诊断工具 在国产操作系统逐步替代的浪潮中,银河麒麟V10凭借其安全稳定的特性,正成为越来越多政企机构的首选。但当我们从Windows生态迁移到这套国产平台时,外设管理—…...

告别CentOS后,我在Rocky Linux上为小团队搭建私有GitLab的实战记录

告别CentOS后,我在Rocky Linux上为小团队搭建私有GitLab的实战记录 当CentOS宣布转向Stream版本时,我们这个小开发团队面临一个紧迫问题:现有的代码托管服务即将失去官方支持。经过几轮技术评估,我们最终选择了Rocky Linux作为替代…...

超强APK Installer工具:在Windows上轻松安装安卓应用的最佳解决方案

超强APK Installer工具:在Windows上轻松安装安卓应用的最佳解决方案 【免费下载链接】APK-Installer An Android Application Installer for Windows 项目地址: https://gitcode.com/GitHub_Trending/ap/APK-Installer 你是否曾经想在Windows电脑上直接运行A…...

Autosar CAN通信实战:从DBC文件配置到代码生成,搞定一个完整信号收发(基于Vector工具链)

Autosar CAN通信实战:从DBC文件配置到代码生成 在车载电子系统开发中,CAN总线作为最常用的车载网络协议,其实现方式直接影响着整车通信的可靠性和实时性。Autosar标准为CAN通信提供了一套完整的软件架构,但如何将理论转化为实际工…...

金属离子对接难题:如何在AutoDock-Vina中正确处理锌蛋白的电荷问题?

金属离子对接难题:如何在AutoDock-Vina中正确处理锌蛋白的电荷问题? 【免费下载链接】AutoDock-Vina AutoDock Vina 项目地址: https://gitcode.com/gh_mirrors/au/AutoDock-Vina AutoDock-Vina作为目前最快速、最广泛使用的开源分子对接引擎&…...

Android 开发问题:WRITE_EXTERNAL_STORAGE is deprecated (and is not granted) when targeting Android 13+.

<uses-permission android:name"android.permission.WRITE_EXTERNAL_STORAGE" />在 Android 开发中&#xff0c;在 AndroidManifest.xml 文件中声明上述权限&#xff0c;出现如下警告信息 WRITE_EXTERNAL_STORAGE is deprecated (and is not granted) when tar…...

终极效率提升:FF14副本动画跳过插件完整指南

终极效率提升&#xff1a;FF14副本动画跳过插件完整指南 【免费下载链接】FFXIV_ACT_CutsceneSkip 项目地址: https://gitcode.com/gh_mirrors/ff/FFXIV_ACT_CutsceneSkip 你是否曾在《最终幻想14》中反复刷副本时&#xff0c;对那些无法跳过的冗长动画感到无奈&#x…...

Samsung三星mlcc片容原厂原装一级代理分销经销批发

品牌 元件类别 型号 描述 包装 数量 SAMSUNG 电容 CL10A105KO8NNNC 0603 1UF 16V 10% X5R 4000 8000,000...

BarrageGrab:15+平台直播弹幕抓取终极指南,无需代理轻松获取实时互动数据

BarrageGrab&#xff1a;15平台直播弹幕抓取终极指南&#xff0c;无需代理轻松获取实时互动数据 【免费下载链接】BarrageGrab 抖音快手bilibili直播弹幕wss直连&#xff0c;非系统代理方式&#xff0c;无需多开浏览器窗口 项目地址: https://gitcode.com/gh_mirrors/ba/Barr…...

小说下载器:200+小说网站一键下载,打造你的专属离线图书馆

小说下载器&#xff1a;200小说网站一键下载&#xff0c;打造你的专属离线图书馆 【免费下载链接】novel-downloader 一个可扩展的通用型小说下载器。 项目地址: https://gitcode.com/gh_mirrors/no/novel-downloader 你是否曾因网络不稳定而无法畅快阅读&#xff1f;是…...

抖音视频批量下载终极指南:3分钟搞定无水印视频收集

抖音视频批量下载终极指南&#xff1a;3分钟搞定无水印视频收集 【免费下载链接】douyin-downloader A practical Douyin downloader for both single-item and profile batch downloads, with progress display, retries, SQLite deduplication, and browser fallback support…...

GDPR+等保2.0双压之下,医疗PHP脱敏算法必须重构的7个信号,你中了几个?

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;GDPR与等保2.0双合规框架下的医疗数据脱敏新范式 在跨境医疗协作与多中心临床研究日益频繁的背景下&#xff0c;同时满足欧盟《通用数据保护条例》&#xff08;GDPR&#xff09;的“数据最小化”原则与…...

告别抓瞎!用mping和C代码搞定Windows/Linux组播测试(附TTL设置与排错指南)

跨平台组播测试实战&#xff1a;从工具选型到排错全流程指南 组播技术在现代分布式系统中扮演着关键角色&#xff0c;无论是金融交易系统、物联网设备通信还是媒体内容分发&#xff0c;都依赖高效可靠的组播传输。但实际部署时&#xff0c;开发者常会遇到组播包"神秘消失&…...

终极免费指南:3分钟掌握image2cpp图像转换工具让OLED开发变得简单

终极免费指南&#xff1a;3分钟掌握image2cpp图像转换工具让OLED开发变得简单 【免费下载链接】image2cpp 项目地址: https://gitcode.com/gh_mirrors/im/image2cpp 你是否在为Arduino或Raspberry Pi项目准备OLED显示屏图像而烦恼&#xff1f;image2cpp图像转换工具正是…...

新机到手必做:5分钟搞定ADB环境,安全停用(非卸载)小米14/ vivo X100的预装APP

新机到手必做&#xff1a;5分钟安全停用小米14/vivo X100预装APP指南 刚拿到新手机时的兴奋感&#xff0c;往往会被预装软件带来的困扰冲淡——那些用不上的应用占据着存储空间&#xff0c;时不时弹出广告&#xff0c;却不敢轻易卸载怕影响系统稳定。其实对于小米14和vivo X10…...

E10表单建模免登录扫码设置

...

SRWE终极指南:免费窗口编辑器让你的Windows窗口管理更高效

SRWE终极指南&#xff1a;免费窗口编辑器让你的Windows窗口管理更高效 【免费下载链接】SRWE Simple Runtime Window Editor 项目地址: https://gitcode.com/gh_mirrors/sr/SRWE 你是否曾因游戏截图分辨率太低而烦恼&#xff1f;或是需要同时调整多个应用程序窗口却找不…...

如何批量处理多个章节的论文降AI:分章节降AI再合并的完整操作教程

如何批量处理多个章节的论文降AI&#xff1a;分章节降AI再合并的完整操作教程 帮三个不同学校的同学处理过论文降AI问题&#xff0c;每次情况不完全一样&#xff0c;但流程基本是固定的。 主推工具&#xff1a;嘎嘎降AI&#xff08;www.aigcleaner.com&#xff09;&#xff0…...

如何快速掌握AriaNg下载管理:面向新手的终极完整指南

如何快速掌握AriaNg下载管理&#xff1a;面向新手的终极完整指南 【免费下载链接】AriaNg AriaNg, a modern web frontend making aria2 easier to use. 项目地址: https://gitcode.com/gh_mirrors/ar/AriaNg AriaNg是一款现代化的Web前端界面&#xff0c;专门为强大的a…...

第七节:RAG 性能进阶——混合检索与 Rerank 重排实战

引言 继上一章完成了基于向量检索的RAG问答机器人搭建后,本章聚焦解决实际应用中遇到的“检索结果不精确”的痛点,探讨如何借助稀疏与密集检索混合策略及重排模型,迈向更高性能的RAG系统。 核心理论 传统的检索技术主要有两种路径: BM25稀疏检索:基于词频和倒排索引,适…...

Unity Mod Manager完全指南:轻松管理你的Unity游戏模组,告别安装烦恼!

Unity Mod Manager完全指南&#xff1a;轻松管理你的Unity游戏模组&#xff0c;告别安装烦恼&#xff01; 【免费下载链接】unity-mod-manager UnityModManager 项目地址: https://gitcode.com/gh_mirrors/un/unity-mod-manager 你是否曾经为安装Unity游戏模组而头疼&am…...

前端性能优化:关键渲染路径优化

前端性能优化&#xff1a;关键渲染路径优化 为什么关键渲染路径这么重要&#xff1f; 关键渲染路径&#xff0c;一个被很多前端开发者忽视的概念&#xff0c;却直接决定了页面的加载速度和用户体验。如果你想让你的页面在用户打开的瞬间就展现内容&#xff0c;而不是让用户盯着…...

季中OTB为什么总是失控:鞋服零售商品企划的核心矛盾与解法

很多鞋服品牌在做季前商品企划时&#xff0c;OTB计划看起来是平衡的——总量控制住了&#xff0c;品类分配合理&#xff0c;交货节奏也排好了。但到了季中&#xff0c;往往会发现实际采购金额已经偏离计划15%以上&#xff0c;有些品类严重超买&#xff0c;有些该追加的爆款却因…...

日活1万的APP,一个月到底能赚多少钱?(附测算公式)

日活1万&#xff0c;广告变现能养活一个团队吗&#xff1f;先来算这笔账“APP日活刚破万&#xff0c;现在想靠广告变现养活团队&#xff0c;是画饼还是可实现的计划&#xff1f;”这是许多开发者在从产品驱动转向商业化的路上&#xff0c;必须直面的灵魂拷问。答案不是一句简单…...

ExplorerPatcher终极指南:深度定制Windows任务栏与开始菜单的完整解决方案

ExplorerPatcher终极指南&#xff1a;深度定制Windows任务栏与开始菜单的完整解决方案 【免费下载链接】ExplorerPatcher This project aims to enhance the working environment on Windows 项目地址: https://gitcode.com/GitHub_Trending/ex/ExplorerPatcher Explore…...

数据工程师必读:如何用ETL构建数据仓库

数据工程师必读&#xff1a;如何用ETL构建数据仓库 业务系统日益复杂&#xff0c;传统的自定义脚本数据抽取方式不仅维护成本高&#xff0c;缺乏调度监控&#xff0c;一旦源表结构变动&#xff0c;整个数据流水线便濒临崩溃。搭建一个稳定、可扩展的数据仓库&#xff0c;不再是…...

突破性技术:Windows原生APK安装架构深度解析

突破性技术&#xff1a;Windows原生APK安装架构深度解析 【免费下载链接】APK-Installer An Android Application Installer for Windows 项目地址: https://gitcode.com/GitHub_Trending/ap/APK-Installer 在传统Android应用部署领域&#xff0c;开发者通常依赖模拟器或…...

【Matllab代码】不确定风功率接入下电-气互联系统的分布鲁棒机会约束经济分布式优化调度

✅作者简介&#xff1a;热爱科研的Matlab仿真开发者&#xff0c;擅长毕业设计辅导、数学建模、数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。&#x1f34e; 往期回顾关注个人主页&#xff1a;Matlab科研工作室&#x1f447; 关注我领取海量matlab电子书和…...