Java 项目如何使用 claude code - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
ywcjxf1515

Java 项目如何使用 claude code

  •  
  •   ywcjxf1515 18 天前 via Android 2748 次点击
    目前维护一个 1.5w 个类的企业 java 项目,领导口述需求。使用 jrebel 热部署。
    现在想使用 claude code ,未增加 claude.md ,发了一个 idea 里的报错给他,cc 是知道用项目里的用户工具类拿到部门 id,结果没有转换类型,也没判空。cc 改完,他自己调用 maven 编译了。电脑里 maven 是用 idea 自带的,只是调了 maven 配置文件。然后开始连续报错了,path 找不到,然后空格问题,还有其他问题。整体下来体验不好。
    现在是问 java 项目如何使用 cc ?是 cc 改,idea 热部署吗,idea 那边有报错再赋值给 cc 吗?
    往大了说,就是 java 开发如何使用 cc ?
    第 1 条附言    18 天前
    看底下网友的意思是 cc 自己编译和运行吗
    是不是 springboot 要开启全局懒加载 和 mqven 并行构建啊
    22 条回复    226-04-13 19:21:35 +08:00
    YanSeven
        1
    YanSeven  
       18 天前
    任何项目,你都要把整个上下文交给 llm ,也就是说,让 agent 在你项目的根目录启动。仅把部分片段的报错或者代码给它,它能给出的结果的正确性肯定是有限的。

    如果无法给出完整的项目上下文,那也尽量模拟一下。
    pagxir
        2
    pagxir  
       18 天前 via Android
    让它自己编译,自己跑,你只管告诉他怎么跑测试,然后去喝茶。
    onedge
        3
    onedge  
       18 天前
    起手 /init 肯定要输出的,然后分支开好,cd 到项目根目录,就随 cc 自己折腾去
    ffxrqyzby
        4
    ffxrqyzby  
       18 天前
    我这边是全托管 cc, idea 已经不开启了.
    没试过一半 cc 一半 idea 这样开发, lz 或许可以试试让 cc 读取一下 idea 的配置来让他完全接管一下
    ywcjxf1515
        5
    ywcjxf1515  
    OP
       18 天前 via Android
    @pagxir maven 整个项目 maven 编译完 3 分钟起啊 有时候可可以到家五分钟太慢了
    ywcjxf1515
        6
    ywcjxf1515  
    OP
       18 天前 via Android
    @YanSeven 有在项目根目录打开
    我在想 path 里没有 maven path 里 java 版本不对是不是要 claude.md 里告诉他
    ywcjxf1515
        7
    ywcjxf1515  
    OP
       18 天前 via Android
    @ffxrqyzby 你是那个 claude --dange...那个参数打开 claude 吗
    ywcjxf1515
        8
    ywcjxf1515  
    OP
       18 天前 via Android
    @pagxir 意思是所有奇怪的地方都给告诉他了
    万带路路径执行 maven 带路径执行 java
    VeryZero
        9
    VeryZero  
       18 天前
    你想怎么编译,怎么校验,在 claude.md 中告诉 AI 就行了

    另外 AI 一般不会整体编译(至少 Codex 不会),只会编译改过的文件
    ideard
        10
    ideard  
       18 天前
    大项目给个分步 skills ,小项目一个 md 即可
    ywcjxf1515
        11
    ywcjxf1515  
    OP
       18 天前 via Android
    @VeryZero 单独编译一个模块都要一分钟。。。
    gadfly3173
        12
    gadfly3173  
       18 天前
    claude 不会主动分析 idea 的配置文件来理解项目运行方式,有时候你让他读取它也读不懂。与其配置本机的 maven ,可以直接接入 idea 的 mcp 来解决,那里面有运行、编译的工具
    ywcjxf1515
        13
    ywcjxf1515  
    OP
       18 天前 via Android
    @gadfly3173 意思是他可以调用 idea mcp 热部署?
    visper
        14
    visper  
       17 天前
    工程太大了。太大的工程如果各种模块里面关联比较多的话,claude code 就比较麻烦了。上下文太大,token 消耗太多。容易忘记其他地方的关联的。
    sprinng
        15
    sprinng  
       17 天前
    t/1203379 这个项目里的 /project-init 和 /project-scan 能帮到你哦~
    如果好用,记得 start 期待一起共建~
    xiaomushen
        16
    xiaomushen  
       17 天前
    @ywcjxf1515 有啥慢的?编译得快可以不被裁么?
    cvbnt
        17
    cvbnt  
       17 天前
    你把你的部署操作弄成脚本,让 CC 调用就行了,或者把脚本弄成 SKILL
    ywcjxf1515
        18
    ywcjxf1515  
    OP
       17 天前 via Android
    @visper 那怎么做 不推荐 claude code 了吗
    gadfly3173
        19
    gadfly3173  
       17 天前
    @ywcjxf1515 #13 应该是可以的,至少我开了编译后自动热更新的设置后, 它编译项目后是可以生效的,jrebel 可能需要额外的 mcp ,没有的话你也可以自己写一个 mcp 插件,简单反编译一下就能丢给 cc 自己去写了。
    ywcjxf1515
        20
    ywcjxf1515  
    OP
       17 天前 via Android
    @gadfly3173 你编译后自动热更新是怎么配置的
    我以前都是按一下快捷键
    prosgtsr
        21
    prosgtsr  
       16 天前
    你得让你的操作能够通过命令行执行,这样 claude 才会,你在 idea 里配置的那些 maven 啥的 claude 又不知道。。
    gadfly3173
        22
    gadfly3173  
       11 天前 via Android
    @ywcjxf1515 我记得调试器的热重载选项里有一个编译后热重载代码的功能,好像不会热重载资源,只重载代码,这个 jetbrians 的 mcp 应该是能触发的,不过我很少边写边启动,用得不多。如果是 tomcat 启动的话,调试的选项里就有更新代码和资源
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     892 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 49ms UTC 21:46 PVG 05:46 LAX 14:46 JFK 17:46
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86