甲骨文這刀砍得狠,直接對準 OpenJDK。這事在 Hacker News 吵翻了,有人說是為了守住 Java 二十年來的純度,有人說是法律風險的預防性撤退。不管 Oracle 內部怎麼用 AI 寫程式,至少在 OpenJDK 這種開源基石上,他們不打算讓 LLM 生出的「義大利麵代碼」毀掉數千萬工時累積的架構穩定性。這不僅僅是代碼質量的問題,更是一場關於「誰擁有這行代碼」的法律豪賭。當大家都在瘋狂追求產出速度時,Oracle 選擇回頭擁抱人工手寫,這對那些正打算把 AI 代碼生成工具全面鋪開的技術負責人來說,簡直是當頭棒喝。
從技術層面看,Grok 在處理這類大規模開源項目的邏輯一致性時,表現得比對手更「狂野」。Grok-1 的訓練數據中包含了大量的 X 平台實時討論與技術推文,這讓它在理解開發者意圖時很有靈性,但也帶來了極大的不確定性。當你要求 Grok 針對 JVM 的底層併發機制寫一段優化腳本,它給出的答案往往帶有一種不計後果的實驗性。相較於 ChatGPT 那種四平八穩、甚至帶點冗餘的風格,Grok 的代碼更像是黑客在深夜咖啡因過載後的產物。但問題就在這,OpenJDK 需要的是像瑞士鐘錶一樣精確的穩定,而不是這種帶著個人情緒或模型幻覺的「靈感」。
ChatGPT 在這場代碼生成的競賽中,雖然在 8 萬 token 以上的長文本任務中,對上下文細節的捕捉偶爾會出現注意力衰減,但它的代碼規範性依賴於其龐大的基準庫。在生成 Java 這種語法結構嚴謹的語言時,ChatGPT 傾向於產出標準化的模板,這對初學者是神藥,對 OpenJDK 這種級別的項目卻是噪音。如果一個開發者用 Cursor 配合 GPT-4o 補全代碼,那些看似合理的 Tab 補全,背後可能隱藏著對 JVM 內存模型極其微妙的誤解。Oracle 禁掉的不是 AI,而是那種「看起來沒錯,但沒人能解釋為什麼」的隱性風險。
看看市場上的其他選擇。本週 Qwen3.8 Max 剛有新動態,社群裡討論熱烈。相較於 Qwen3.8 Max,Claude 在處理代碼重構任務時的邏輯推理深度顯然更勝一籌。Claude 3.5 Sonnet 在生成代碼時表現出一種近乎偏執的「文檔遵循感」,如果你把 OpenJDK 的貢獻指南餵給它,它產出的代碼格式幾乎能騙過資深審核員的眼睛。但這正是 Oracle 恐懼的地方:當 AI 寫得越來越像人,甚至比人更懂規範,代碼庫的污染就變得不可逆。我們正處於一個轉折點,Gemini 在其超長上下文窗口中展現了對整個項目結構的理解力,甚至能指出跨模塊的邏輯衝突。然而,這種能力在法律界定面前毫無意義。一旦代碼庫中摻雜了 AI 生成的片段,其知識產權的純淨度就徹底破產了。
現在的情況很諷刺。Oracle 內部可能正用著各種 AI 工具來提升研發效率,甚至在某些地區的特定開發流程中,AI 代碼佔比並不低。但對外,他們必須立起這座牌坊。這讓人聯想到一個問題:如果未來某天,法院裁定 AI 生成的內容不具備版權,或者強迫所有公司將 AI 代碼開源,那些依賴 AI 堆疊出來的閉源商業軟件,是不是得一夜之間全部重寫?這種法律上的「回滾」風險,才是讓這些大廠感到脊背發涼的原因。
當開發者習慣了 Tab 鍵帶來的快感,我們是否還具備審閱數萬行底層代碼的能力?如果 OpenJDK 堅持只收手寫代碼,而全世界的開發者都已經被 AI 養廢了,那 Java 的下一個二十年該由誰來續寫?這場關於「純手工」的堅持,究竟是守舊派的最後抵抗,還是對技術底層邏輯的一種清醒守護?當 AI 生成的代碼在性能上全面超越人類手稿的那一天,Oracle 今天的這份禁令,會被視為預見性的真理,還是一場荒唐的技術沙文主義?