我是Kotlin的忠實粉絲,希望將其與Codename One而不是Java一起使用。由於Kotlin能夠與Java無縫協作,因此我可以使用它來構建Codename One的應用程序?我可以在Codename One上使用Kotlin嗎?
回答
更新2017年7月:的科特林支持公共測試版現已推出:https://www.codenameone.com/blog/kotlin-support-public-beta.html
更新2017年6月:我們剛剛宣佈,我們將在今年年底做到這一點:https://www.codenameone.com/blog/kotlin-wora-ios-iphone-windows-android.html
原來的答覆以下僅供參考:
對此沒有官方支持。在RoboVM停產並提供幫助進行集成之後,我們聯繫了Kotlin團隊,但這並沒有帶來任何地方。如果有興趣團隊一起工作,我們會提供幫助。
這可能是你可以自己做的事情,例如史蒂夫漢娜寫了米拉支持(紅寶石的一個子集)之前,我們把他帶到我們的團隊:https://www.codenameone.com/search?q=mirah
您可以編輯我們的Ant腳本調用gradle這個腳本,將儀器向前發送它的編譯器之前的代碼。我不確定這將會是多麼困難,並且可能會「沒有進一步的努力」。
但是,可能有兩個潛在的問題:
字節碼的創新使用,可能在某些情況下會失敗(例如iOS上的Windows UWP平移)。這是不太可能的,但我們只用javac進行測試
API的使用我們沒有 - 這是可能的。例如。在科特林編譯器可能隱含依靠Java SE API we don't support的部分在這種情況下,修復可能無論是在科特林或代號的一個或介於兩者之間用字節碼
此外,Kotlin還有一個需要包含的運行時庫。包括這將需要明確的支持。而庫本身可能依賴於尚未被Codename One支持的JRE部分。當我添加Mirah支持時,我選擇了Mirah,因爲它是不需要自己的運行時庫的* only * JVM語言(不是Java)。 –
- 1. 你可以在Codename One中使用JDBC嗎?
- 2. 使用Codename One可以實時顯示攝像機輸出嗎?
- 3. 在Codename One中使用FileChooser
- 4. 在Codename One中,我可以標記一個android應用程序圖標嗎?
- 5. 如何使用Codename one Storage?
- 6. 我可以在Codename One的容器或WebBrowser組件中放置廣告嗎?
- 7. Codename One可以拍一張臨時照片嗎?
- 8. TreeNode上的EventListener codename one
- 9. Codename one builds failing
- 10. Codename One PDF API
- 11. Codename one GPS tracker
- 12. Codename one,Capture Audio
- 13. CodeName One IOS CaptureAudio
- 14. codename one augmented reality
- 15. Codename one image issue
- 16. Codename one Pointer Popup
- 17. FacebookConnect Codename one api
- 18. CodeName One Transitions
- 19. Codename one FacebookConnect
- 20. codename one picker object
- 21. Codename One .properties
- 22. Codename One BoxLayout scroll
- 23. Math class codename one
- 24. 拖放CodeName One
- 25. Codename one LocationManager.getLocationManager()null
- 26. Codename one ListCellRenderer
- 27. 是否可以在Codename One HTTPS請求中禁用SSL v3?
- 28. 我們可以在Kotlin中使用infix通用方法嗎?
- 29. 我的apk在哪裏? codename one
- 30. 在Codename One的地圖上設置點
是的崗前處理器更難但是可行的,你可以,爲什麼不呢? –
我不太確定。 Codename One不允許本地構建,除非您有企業支持。 Kotlin必須與構建過程綁定才能工作。有沒有辦法在他們需要使用的服務器上自定義構建過程? – Graham
如果他們使用Gradle - 你可以使用Kotlin。它只是一個gradle插件+標準庫,而不是單獨的編譯器 –