IntelliJ не может разрешить членов Kotlin stdlib в комплекте - PullRequest
0 голосов
/ 27 сентября 2018

Согласно документам Kotlin , существует пакет OSGi для стандартных библиотек Kotlin.Однако, если я заменим kotlin-stdlib этим пакетом в соответствии с рекомендациями:

<dependency>
    <groupId>org.jetbrains.kotlin</groupId>
    <artifactId>kotlin-osgi-bundle</artifactId>
    <version>${kotlin.version}</version>
    <type>bundle</type>
</dependency>

IntelliJ больше не сможет найти какие-либо классы или функции из stdlib (то есть println):

Screenshot

Если я собираю и запускаю проект (с maven-pax-plugin), все работает нормально - кажется, что он нарушил возможности анализа IntelliJ.

Какя должен правильно включить Kotlin как зависимость OSGi?

Я использую maven-bundle-plugin для сборки этого комплекта.

1 Ответ

0 голосов
/ 28 сентября 2018

Если вы удалите раздел type, он должен работать:

<type>bundle</type>

Пакет Kotlin OSGi не артефакт пакета Maven.

Для Intellij IDEA 2018.2, у меня работает, используя этот способ:

    <dependency>
        <groupId>org.jetbrains.kotlin</groupId>
        <artifactId>kotlin-osgi-bundle</artifactId>
        <version>${kotlin.version}</version>
        <scope>provided</scope>
    </dependency>
    <dependency>
        <groupId>org.jetbrains.kotlin</groupId>
        <artifactId>kotlin-stdlib-jdk8</artifactId>
        <version>${kotlin.version}</version>
    </dependency>
...