OpenJDK 社群基於程式碼穩定性與著作權考量,導入了暫時禁止 AI 生成程式碼貢獻的政策。
想像一下。假設你是一位建造巨型橋樑的工程師。但在設計橋樑時,如果直接採用不經人手、由「AI」自動計算出來的數據,會是什麼樣的情況?雖然計算速度很快,但你恐怕會感到不安:AI 為何導出這些數據?是否存在肉眼看不見的結構性缺陷?
近期,Java 語言的核心專案 OpenJDK 社群公佈了一項包含類似考量的政策。這是一項被稱為「禁止 AI 生成程式碼貢獻」的政策,要求不得將 AI 撰寫的程式碼帶入專案中。究竟為何做出這項決定?這與我們的日常生活有何關聯?讓我們一起來探討。
這為什麼很重要?
Java 是全球無數金融系統、企業級軟體與雲端基礎設施的骨幹。我們早上起床確認銀行餘額、整理會議資料時所使用的許多系統,都是基於 Java 運作。
如果這些核心基礎(OpenJDK)中混入了未經驗證的 AI 程式碼,會發生什麼事?這可能不只是簡單的錯誤,更會引發數據洩漏或系統癱瘓等嚴重的安全事故。這項政策並非單純表示「討厭 AI」,而是為了守護基礎設施的信任度(Trustworthiness,即相信系統能如預期般安全運作)所採取的措施 Source 10。開發者將 AI 作為便利工具活用固然是好事,但對於我們每天使用的基礎設施,決意維持由人類親自負責到底的架構。
簡單理解:程式碼的「出處」問題
簡單來說,這項政策與「原產地標示制度」類似。
比喻來說,AI 撰寫程式碼的方式,就像是一位閱讀過無數書籍並將內容混合、產生新句子的「聰明摘要機器人」。但問題在於,這個機器人在產生句子時,往往無法完美說明資訊來源。
- 智慧財產權的模糊性:有人利用 AI 製作了程式碼,結果發現該程式碼侵犯了他人的著作權該怎麼辦?OpenJDK 是全球使用的開源專案,無法承擔這種法律糾紛的風險 Source 10。
- 審查者的痛苦:過去,審查人員查看人類撰寫的程式碼並指出「這裡是問題」,但 AI 瞬間產出的數萬行程式碼,對於人類而言審查負擔過於巨大 Source 8, Source 10。
- 安全性與穩健性:AI 有時會寫出「看起來正確但卻錯誤」的程式碼。如果 AI 程式碼中隱藏了針對系統微小縫隙的漏洞,要將其找出比大海撈針還困難 Source 5, Source 10。
比喻來說,AI 就像是幫你寫作業的「天才學弟」。學弟寫的報告太過優秀,於是你原封不動地交給老師,結果發現內容全是來源不明的拼湊,或是在核心數據上有誤,這時該負責任的人依然是你。OpenJDK 目前決定不直接接收那位學弟的報告。
現況:「個人用」vs「專案用」
那麼,開發者在撰寫程式碼時是否就不能使用 AI 了呢?幸好並非如此。
OpenJDK 社群「允許個人使用 AI」。開發者為了提高自身生產力而向 AI 提問、獲取靈感,並以此為基礎「由人類親自」撰寫程式碼並提交,是完全沒有問題的 Source 6。只是嚴格禁止將 AI 直接生成的產出物原封不動地複製並貢獻給 OpenJDK 專案 Source 5, Source 6。
有趣的是,同樣是由 Oracle 支援的專案,像 GraalVM 等其他專案卻允許 AI 生成程式碼的貢獻 Source 3, Source 11。這展示了根據專案性質的不同,對 AI 的看法也會有所差異,是一個非常有趣的案例 Source 10, Source 12。
未來將如何發展?
這次措施是 2026 年 4 月所發表的「臨時政策(Interim Policy)」Source 1, Source 8。換言之,OpenJDK 計劃更密切地觀察 AI 將為軟體生態系統帶來的機會與風險,並在長期內制定完善的政策 Source 8。
我們今後將會在更多開源專案中看到類似的考量。這是因為核心基礎設施專案越是傾向於將「安全」與「責任」優先於「速度」。讀者們今後在新聞中,常會看到「AI 協助寫程式」這類華麗訊息的背後,附帶上「但是,誰要負責?」這種質疑。這證明了我們的責任感也正隨著技術的發展一同進化。
MindTickleBytes 的 AI 記者觀點
技術越進步,「人類的判斷」就越顯珍貴。即便未來 AI 可能寫出所有程式碼,但該程式碼是否安全到足以支撐公共系統,其最終批准的角色永遠都會留給人類。此次 OpenJDK 的決定,將成為警惕技術工具化、守護系統信任的重要里程碑。
參考資料
- OpenJDK Interim Policy on Generative AI
- OpenJDK Interim Policy on Generative AI - announce - openjdk.org
- Oracle’s OpenJDK Bans Generative AI Contributions While Oracle’s GraalVM Allows Them - InfoQ
- What’s coming in JDK 27… and why OpenJDK just said no to your Copilot - JVM Weekly vol. 171
- Agentic AI Workflows for OpenJDK Development
- OpenJDK Legal Documents
- April 2026 - announce - openjdk.org
- OpenJDK Interim Policy on Generative AI Usage - LinkedIn
- Oracle’s OpenJDK Bans Generative AI Contributions While…
- Oracle’s OpenJDK Bans Generative AI Contributions While …
- Oracle’s OpenJDK Bans Generative AI Contributions While …
- 程式碼穩定性與安全性疑慮
- 智慧財產權所有權問題
- AI 工具的訂閱費用太昂貴
- 是的,撰寫程式碼時完全不能使用 AI。
- 不是,在不提交至專案的個人作業中可以使用。
- 只要提交給專案的程式碼使用 AI 即可。
- 是的,完全相同。
- 不是,GraalVM 採取了允許 AI 生成程式碼貢獻的相反政策。
- 沒有制定政策。