Проект не основан на Gradle. Как открыть проект из корневого каталога? - PullRequest
0 голосов
/ 03 июля 2018

У меня была эта проблема некоторое время, и я ломал голову.

Я гуглил этот ответ здесь

Ответ: «Убедитесь, что вы открываете проект из его корневого каталога. То есть в каталог, содержащий файл build.gradle верхнего уровня.»

Мой вопрос: как мне это сделать, если я клонировал проект из bitbucket?

Вот скриншот моего дерева файлов: screen

Спасибо за любые идеи

Редактировать: файлы Gradle

// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:1.2.3'        
    }
}

allprojects {
    repositories {
        jcenter()
    }
}

уровень приложения:

buildscript {
    repositories {
        jcenter()
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:1.2.3'
        classpath 'com.neenbedankt.gradle.plugins:android-apt:1.4'
    }
}

apply plugin: 'com.android.application'
apply plugin: 'android-apt'
def AAVersion = '4.0.0'
def JacksonVersion = '2.6.0'
def GPSVersion = '6.5.87'

dependencies {
    compile 'com.android.support:appcompat-v7:23.0.0'
    compile 'com.android.support:design:23.0.0'
    compile 'com.android.support:recyclerview-v7:23.0.0'
    compile 'com.android.support:preference-v7:23.0.0'
}

repositories {
    maven {
        url 'https://repo.spring.io/libs-milestone'
    }
}

apt {
    arguments {
        androidManifestFile variant.outputs[0].processResources.manifestFile
        resourcePackageName "appname"
        logLevel 'TRACE'
        logAppenderConsole 'true'
    }
}

android {
    compileSdkVersion 23
    buildToolsVersion "22.0.1"

    defaultConfig {
        applicationId "appname"
        minSdkVersion 14
        targetSdkVersion 23
        versionCode 1
        versionName "1.0"
    }

    buildTypes {
        release {
            shrinkResources false
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
    packagingOptions {
        exclude 'META-INF/notice.txt'
        exclude 'META-INF/license.txt'
        exclude 'META-INF/ASL2.0'
        exclude 'META-INF/LICENSE'
        exclude 'META-INF/NOTICE'
    }
}

allprojects {
    repositories {
        jcenter()
        mavenCentral()
    }
}

Ответы [ 2 ]

0 голосов
/ 03 июля 2018

Ваш проект не основан на Gradle, поскольку settings.gradle и bulid.gradle не находятся в каталоге проекта IDE, они находятся в этой папке черного ящика под .idea и .gradle на вашей картинке.

Вы должны закрыть этот проект. Откройте эту другую папку как проект Android Studio, независимо от того, откуда вы получили этот проект.

Для библиотечных проектов в Github это будет выглядеть так. Любой может клонировать это как есть и открыть как проект.

Для приложений замените sample на app и удалите library


Самое главное, секции buildscript и allprojects не должны быть в /app/build.gradle, только /build.gradle

Кроме того, ваш плагин Gradle build устарел

0 голосов
/ 03 июля 2018

Верхний уровень должен выглядеть так:

buildscript {
    repositories {
        google()
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.1.3'

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

allprojects {
    repositories {
        google()
        jcenter()
    }
}

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

Файл уровня приложения должен выглядеть следующим образом:

apply plugin: 'com.android.application'
def AAVersion = '4.0.0'
def JacksonVersion = '2.6.0'
def GPSVersion = '6.5.87'

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar']) //This is where your JARs go

    implementation 'com.android.support:appcompat-v7:23.0.0'
    implementation 'com.android.support:design:23.0.0'
    implementation 'com.android.support:recyclerview-v7:23.0.0'
    implementation 'com.android.support:preference-v7:23.0.0'
}

repositories {
    maven {
        url 'https://repo.spring.io/libs-milestone'
    }
}

android {
    compileSdkVersion 23
    buildToolsVersion "22.0.1"

    defaultConfig {
        applicationId "appname"
        minSdkVersion 14
        targetSdkVersion 23
        versionCode 1
        versionName "1.0"
    }

    buildTypes {
        release {
            shrinkResources false
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }

    packagingOptions {
        exclude 'META-INF/notice.txt'
        exclude 'META-INF/license.txt'
        exclude 'META-INF/ASL2.0'
        exclude 'META-INF/LICENSE'
        exclude 'META-INF/NOTICE'
    }
}

Вам необходимо удалить из него плагин android-apt, поскольку функциональность уже включена. Если позже у вас возникнут проблемы, отметьте этот вопрос .

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