爱意满满的作品展示区。
Shawlaw

或许你也有多 Gradle 项目多 JDK 要求混用的痛点?不妨试试我这个 patch project, gradlew-jdk-local

  •  
  •   Shawlaw · 3 days ago · 825 views

    项目地址:https://github.com/Shawlaw/gradlew-jdk-local

    背景是工作上兴趣上会拉到不同的 Android 项目,它们由于迭代维护时间不同,依赖使用的 JDK 也会不同。

    之前手工编程都用 AS 打开还好,AS 会提示让指定一个 JDK ,并且这个 JDK Path 也不会影响到团队其他同事的使用。

    但现在大部分情形下 Agent 编程了,纯命令行跑的时候就麻烦了,要么就给 Agent 强调编译时要注入什么版本的 JDK 环境变量,要么就得让 Agent 自己试,多不环保啊(

    所以抽空研究了下这个“两不管”——Android 认为已经有 AS 的私有配置了(我猜的)、Gradle曾认为只需要考虑 gradle.properties的中空地带,和 Agent 一起弄出了这个 patch project 。

    希望这个 patch 能帮你的 agent 节省一些 token (笑

    如果有帮到你,欢迎 star ,谢谢~

    3 replies    2026-06-17 17:37:31 +08:00
    yor1g
        1
    yor1g  
       3 days ago
    官方不是提供 updateDaemonJvm ?
    Shawlaw
        2
    Shawlaw  
    OP
       2 days ago
    @yor1g 我理解还是有两个痛点的:
    1 、updateDaemonJvm 是 gradle 在 8.x 版本才引入的能力,并且到 9.x 才稳定下来,而 Android 项目中,Gradle 、JDK 、AGP 这些关联关系太重以至于不好随便升级任一组件的版本,甚至很多陈年仓库压根就升级不动
    2 、updateDaemonJvm 只影响实际 build 时的 daemon 用的 JVM ,有时候其实跑 wrapper 就已经要用特定版本的 JDK 了,它就没法解决这个问题
    Dream95
        3
    Dream95  
       2 days ago
    直接用 jenv 好了
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   1079 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 54ms · UTC 17:55 · PVG 01:55 · LAX 10:55 · JFK 13:55
    ♥ Do have faith in what you're doing.