Пакет не существует при сборке, но импорт без ошибок? - PullRequest
0 голосов
/ 10 февраля 2019

Мой проект работал нормально, пока я не добавил в свой проект зависимость Kryo.Я могу использовать как Netty, так и Kryo без синтаксических ошибок в моей IDE, но он не будет собираться.Все, что я делал, это добавлял Kryo к своему common модулю и начинал внедрять Kryo в своем коде, когда я хотел запустить Gradle, он возвращал большой список ошибок ни о каких существующих пакетах Netty и Kryo.

Мой gradle очень прост, клиентский и серверный модули зависят от общего, у которого есть 2 пользовательских класса, и реализуют Kryo и Netty.

project(":common") {
    apply plugin:'java'
    dependencies {
        // https://mvnrepository.com/artifact/io.netty/netty-all
        implementation group: 'io.netty', name: 'netty-all', version: '4.1.33.Final'
        // https://mvnrepository.com/artifact/com.esotericsoftware.kryo/kryo
        implementation group: 'com.esotericsoftware.kryo', name: 'kryo', version: '2.24.0'
    }
}

project(":server") {
    apply plugin:'java'
    dependencies {
        implementation project(":common")
        // https://mvnrepository.com/artifact/org.mongodb.morphia/morphia
        compile group: 'org.mongodb.morphia', name: 'morphia', version: '1.3.2'
    }
}

project(":client") {
    apply plugin:'java'
    dependencies {
        implementation project(":common")
    }
}

В клиенте и на сервере (оба только приложения java atm) я использую Kryo и Netty без синтаксических ошибок, но при запуске или сборке я получаю следующий список для каждого импортируемого класса Netty или Kryo.

error: package io.netty.channel does not exist  
error: package io.netty.channel does not exist  
error: package io.netty.channel does not exist  
error: package io.netty.channel.group does not exist    
error: cannot find symbol class ChannelInboundHandlerAdapter    
error: cannot find symbol class ChannelGroup    
error: cannot find symbol class ChannelHandlerContext   
error: cannot find symbol class ChannelGroup    
error: cannot find symbol class ChannelHandlerContext   
error: cannot find symbol class ChannelHandlerContext   
error: method does not override or implement a method from a supertype  
error: method does not override or implement a method from a supertype  

Я попробовал самое очевидное invalidate cache / restart, очистка, восстановление безуспешно.Кроме того, я попытался поиграть с плагином, установив его на java-library и обратно.Единственное, что я сделал не так, как обычно, это то, что я пытался исключить Kryo для других двух модулей, но я отказался от этого после нескольких попыток и стер эти строки exclude.Это, наверное, просто то, что я упустил из виду, но я не могу это понять.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...