Добавьте AndroidSlidingUpPanel в проект IntelliJ IDEA с помощью Gradle

StackOverflow https://stackoverflow.com//questions/22081918

Вопрос

Я создаю проект на IntelliJ IDEA, используя Gradle, и пытаюсь добавить к нему AndroidSlidingUpPanel (https://github.com/umano/AndroidSlidingUpPanel).

Что именно мне нужно сделать, чтобы его настроить?

У меня есть следующая структура папок:

RootFolder
|_libraries
    |_ AndroidSlidingUpPanel
         |_ library
               |_ build.gradle
         |_ settings.gradle
         |_ build.gradle
|_app
    |_ build.gradle
|_ settings.gradle
|_ build.gradle

Файлы такие:

Корневая папка/settings.gradle

include ':app'
include ':libraries:AndroidSlidingUpPanel:library'

Корневая папка/build.gradle

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:0.8.+'
    }
}

allprojects {
    repositories {
        mavenCentral()
    }
}

RootFolder/libraries/AndroidSlidingUpPanel/settings.gradle

include ':library'
include ':demo'

RootFolder/libraries/AndroidSlidingUpPanel/build.gradle

allprojects {

  group 'com.sothree.slidinguppanel'
  version '1.0.0-SNAPSHOT'

  buildscript {
    repositories {
      mavenCentral()
    }
  }

  dependencies {
    repositories {
      mavenCentral()
    }
  }
}

RootFolder/libraries/AndroidSlidingUpPanel/library/build.gradle

apply plugin: 'android-library'

buildscript {
  dependencies {
    classpath 'com.android.tools.build:gradle:0.7.+'
  }
}

dependencies {
  compile 'com.android.support:support-v4:13.0.0'
}

android {
    compileSdkVersion 19
    buildToolsVersion "19.0.1"

    sourceSets {
        main {
            manifest.srcFile 'AndroidManifest.xml'
            java.srcDirs = ['src']
            resources.srcDirs = ['src']
            res.srcDirs = ['res']
            assets.srcDirs = ['assets']
        }
    }
}

Корневая папка/приложение/build.gradle

apply plugin: 'android'

android {
    compileSdkVersion 19
    buildToolsVersion "19.0.2"

    defaultConfig {
        minSdkVersion 10
        targetSdkVersion 19
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            runProguard false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
        }
    }
}

dependencies {
    compile 'com.android.support:gridlayout-v7:19.0.1'
    compile 'com.android.support:support-v4:19.0.1'
    compile 'com.android.support:appcompat-v7:19.0.1'
    compile fileTree(dir: 'libs', include: ['*.jar'])
}
Это было полезно?

Решение

Вы не совсем понимаете, какие ошибки сборки у вас могут возникнуть или в чем конкретно заключается ваш вопрос, поскольку у вас нет зависимости от SlidingUpPanel в вашем приложение/build.gradle, вопрос как его включить?

Если да, то первое, что следует иметь в виду, это то, что в проекте не может быть более одного настройки.gradle.Точнее, он ищет его только в корневой папке и использует, если он там есть.Итак настройки.gradle в RootFolder/библиотеки/AndroidSlidingUpPanel/ будет проигнорирован.Похоже, вы правильно настроили include в библиотеку SlidingUpPanel в Корневая папка/settings.gradle, так это хорошо:

include ':libraries:AndroidSlidingUpPanel:library'

чтобы включить зависимость от него в свое приложение, вы используете compile project оператор и укажите тот же путь:

dependencies {
    compile 'com.android.support:gridlayout-v7:19.0.1'
    compile 'com.android.support:support-v4:19.0.1'
    compile 'com.android.support:appcompat-v7:19.0.1'
    compile project(':libraries:AndroidSlidingUpPanel:library')
    compile fileTree(dir: 'libs', include: ['*.jar'])
}

Если вы используете Android Studio (она также должна работать с проектами на основе Gradle в IntelliJ Community Edition), вы можете настроить зависимости от модулей из диалогового окна «Структура проекта» через Модули > Ваш модуль > Зависимости > + > Зависимость модуля:

Project Structure dialog showing how to add a module dependency

Если вы добавили модуль в свой настройки.gradle файл, который у вас уже есть, и вы синхронизировали свой проект с файлами Gradle, тогда модуль SlidingUpPanel должен появиться в представлении «Проект» в IDE и появиться в качестве выбранного модуля в этом списке зависимостей.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top