Я большой поклонник Kotlin и хотел бы использовать его с Codename One вместо Java. Поскольку Kotlin беспрепятственно взаимодействует с Java, могу ли я использовать его для создания приложения с Codename One?Могу ли я использовать Kotlin с Codename One?
ответ
Обновлено июля 2017: Открытый бета поддержки Котлин теперь доступен: https://www.codenameone.com/blog/kotlin-support-public-beta.html
Обновлено июня 2017: Мы только что объявили, мы сделаем это до конца года: https://www.codenameone.com/blog/kotlin-wora-ios-iphone-windows-android.html
Оригинальный ответ ниже для справки:
Официальной поддержки для этого нет. Мы связались с командой Kotlin некоторое время назад после того, как RoboVM был прекращен и предложил помочь в интеграции, но это никуда не привело. Если есть интерес к совместной работе со своей командой, мы поможем.
Это может быть что-то, что вы можете сделать сами, например. Стив Ханна написал поддержку Mirah (подмножество Ruby), прежде чем мы привели его в нашу команду: https://www.codenameone.com/search?q=mirah
Вы можете отредактировать наш скрипт Ant, чтобы вызвать скрипт градиента, который будет обрабатывать код перед отправкой его в компилятор. Я не уверен, как сильно это будет и может «просто работать» без каких-либо дополнительных усилий.
Тем не менее, может быть две проблемы:
Творческое использование байт-кода, что может произойти сбой в некоторых случаях (например, на прошивкой, Windows UWP перевод). Это маловероятно, но возможно, поскольку мы тестируем только с помощью javac
Использование API у нас отсутствует - это возможно. Например. компилятор Котлин может неявно полагаться на части Java SE API we don't support в этом случае исправление может быть сложнее, но выполнимо либо в Котлин или в Codename Один или где-то посередине с предварительно постпроцессора в байткод
Кроме того, у Kotlin есть библиотека времени выполнения, которая должна быть включена. Включение этого потребует явной поддержки. И сама библиотека может зависеть от частей JRE, которые еще не поддерживаются Codename One. Когда я добавил поддержку Mirah, я выбрал Mirah, потому что это был язык * только * JVM (кроме Java), который не требовал собственной библиотеки времени исполнения. –
- 1. Codename One Невозможно использовать jar
- 2. Как использовать Codename one Storage?
- 3. Можете ли вы использовать JDBC с Codename One?
- 4. Codename One Local Unittesting
- 5. Codename One ORM
- 6. Использование WebSockets с Codename One
- 7. Можно ли использовать свойства (JavaBeans) с Codename One?
- 8. Служба уведомлений Codename One
- 9. Codename One BoxLayout scroll
- 10. Codename One - multilist значение
- 11. JUnit in Codename One
- 12. Datespinner in Codename one
- 13. Codename One - back Command
- 14. Codename One .properties
- 15. Codename One - проблема с компоновкой
- 16. Codename One: Обработка аннотаций
- 17. NoMethodError J2ME Codename One
- 18. Codename One RESTfulWebServiceClient Threads
- 19. использовать веб-службы .NET в Codename One
- 20. Codename one LocationManager.getLocationManager() null
- 21. Как я могу прервать метод getCurrentLocation (Codename One Location Manager)?
- 22. Codename one image issue
- 23. Ресурсы и Codename One
- 24. Codename one Connection Отказано
- 25. Как я могу отправить файл CSV в Codename One?
- 26. Codename one ListCellRenderer
- 27. Codename One CheckBox с RTL
- 28. codename one nfc beacon
- 29. Codename One - Toast plugin
- 30. Codename one Android Sidemenu
Да, ты может, почему бы и нет? –
Я не уверен в этом. Codename One не поддерживает локальные сборки, если у вас нет поддержки предприятия. Чтобы работать, Котлин должен быть связан с процессом сборки. Есть ли способ настроить процесс сборки на своих серверах, которые они требуют использовать? – Graham
Если они используют Gradle - вы можете использовать Kotlin. Это просто плагин с градиентом + стандартная библиотека, а не отдельный компилятор –