Пытаюсь использовать классы из модуля common Подкл...
# russian
l
Пытаюсь использовать классы из модуля common Подключении common модуля в платформенный - все ок. А вот так: common - платформенный - платформенный. не ок. Smart cast is impossible, public API property in different module. Не смертельно, но не совсем понятно почему. Все равно common компилится в отдельный ярник, почему тогда в первом случае это никто не спрашивает?
i
common + реализующий его платформенный модуль компилируются в один jar, от которого потом зависит другой платформенный модуль
l
А когда есть только common и платформенный модуль? Ярника у меня явно два
i
Из common получается неисполняемый jar, здесь нет проблемы раздельной компиляции. Проблема в следующем: при раздельной компиляции можно поменять реализацию свойства в одном модуле таким образом, что предположения о смарт-кастах в другом модуле становятся недействительными.
l
Или "common + реализующий его платформенный модуль компилируются в один jar" или "Из common получается неисполняемый jar,"
Или я чего то не понимаю?
i
Из common получается jar c метадатой, с ним нет проблемы с раздельной компиляцией, т.к. он не содержит исполняемого кода. Из common + платформенного кода получается исполняемый jar для этой платформы.