Android Многофункциональный проект Studio Gradle Syn c Ошибка - PullRequest
0 голосов
/ 03 марта 2020

Я создаю многомодульный проект с модулем приложения, модулем сервера и общим модулем. Когда я запускаю ./gradlew build в каталоге Lets Go root, он возвращается без каких-либо ошибок. Если я открою проект в android studio, хотя получаю некоторые странные ошибки, и мой редактор дизайна ничего не показывает из-за неправильной синхронизации c. Даже если все на вкладке syn c помечено зеленой галочкой, оно все равно выдает ошибки. Я уже сделал недействительными кэши, но это не помогает. Я пытаюсь дать как можно больше информации, поэтому следующая часть может быть немного длинной. Но я думаю, что я заказал их в том, что является наиболее или менее актуальным.

Син c ошибки:

На проекте позволяет Go:

Gradle Daemon started in 876 ms
<ij_msg_gr>Other<ij_msg_gr><ij_nav>/Users/koen/Vakken/Architecture_and_design/letsgo/LetsGo/app/build.gradle<ij_nav><i><b>project ':app': Unable to resolve all content root directories</b><eol>Details: java.lang.NullPointerException: null</i>
<ij_msg_gr>Tests model errors<ij_msg_gr><ij_nav>/Users/koen/Vakken/Architecture_and_design/letsgo/LetsGo/app/build.gradle<ij_nav><i><b>project ':app'</b><eol>Details: java.lang.NullPointerException: null</i>

CONFIGURE SUCCESSFUL in 9s

В проекте: сервер (хотя я не думаю, что это должен быть другой синтаксис c)

Task 'wrapper' not found in project ':server'.

Журнал ошибок находится на https://pastebin.com/nq6HpmGi

в gradle.properties я установил следующие переменные:

kotlin_version=1.3.61
gradle_version=3.6.1

./gradlew projects output

Root project 'LetsGo'
+--- Project ':app'
+--- Project ':common'
\--- Project ':server'

Быстрый сброс моих файлов Gradle:

settings.gradle

include ':app', ':common', ':server'
rootProject.name='LetsGo'

build.gradle

Позволяет Go

buildscript {
    ...

    dependencies {
        // Gradle/Kotlin Core
        classpath "com.android.tools.build:gradle:$gradle_version"
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
        ...
    }
}

allprojects {
    group 'com.kvw.letsgo'
    version '0.0.1'
    repositories {
        ...
    }
}

project(':app') {
    repositories {
        ...
    }
}

project(':server'){
    repositories {
        ...
    }
}

task clean(type: Delete) {
    delete rootProject.buildDir
}

: сервер

plugins{
    id 'kotlin'
    id 'application'
    ...
}

mainClassName = "io.ktor.server.netty.EngineMain"

sourceSets {
    main.kotlin.srcDirs = main.java.srcDirs = ['src']
    test.kotlin.srcDirs = test.java.srcDirs = ['test']
    main.resources.srcDirs = ['resources']
    test.resources.srcDirs = ['testresources']
}

dependencies {
    implementation project(':common')
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    ...
}

: app

plugins {
    id 'com.android.application'
    id 'kotlin-android'
    ...
}

android {
    compileSdkVersion 29
    buildToolsVersion "29.0.2"
    defaultConfig {
        applicationId "com.kvw.letsgo.client"
        minSdkVersion 23
        targetSdkVersion 29
        versionCode 1
        versionName "1.0"
        ...
    }
    ...
    compileOptions {
        sourceCompatibility = 1.8
        targetCompatibility = 1.8
    }

    ...
}

dependencies {
    // Local
    implementation project(':common')
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    ...
}

И, наконец, для полноты вот вывод tree LetsGo -L 2

LetsGo
├── LetsGo.iml
├── app
│   ├── app.iml
│   ├── build
│   ├── build.gradle
│   ├── libs
│   ├── proguard-rules.pro
│   └── src
├── build
│   ├── intermediates
│   └── kotlin
├── build.gradle
├── common
│   ├── build
│   ├── build.gradle
│   ├── common.iml
│   ├── libs
│   └── src
├── gradle
│   └── wrapper
├── gradle.properties
├── gradlew
├── gradlew.bat
├── local.properties
├── server
│   ├── build
│   ├── build.gradle
│   ├── resources
│   ├── server.iml
│   ├── src
│   └── test
├── settings.gradle
└── versions.gradle
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...