Ajouter AndroidSlidingUpPanel au projet IntelliJ IDEA à l'aide de Gradle
-
24-12-2019 - |
Question
Je crée un projet sur IntelliJ IDEA à l'aide de Gradle et j'essaie d'y ajouter AndroidSlidingUpPanel (https://github.com/umano/AndroidSlidingUpPanel).
Que dois-je faire exactement pour le configurer ?
J'ai la structure de dossiers suivante :
RootFolder |_libraries |_ AndroidSlidingUpPanel |_ library |_ build.gradle |_ settings.gradle |_ build.gradle |_app |_ build.gradle |_ settings.gradle |_ build.gradle
Les fichiers sont comme ceci :
Dossier racine/settings.gradle
include ':app'
include ':libraries:AndroidSlidingUpPanel:library'
Dossier racine/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']
}
}
}
RootFolder/app/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'])
}
La solution
Vous ne savez pas exactement quelles erreurs de construction vous pourriez rencontrer ni quelle est votre question exacte, mais comme vous n'avez pas de dépendance à SlidingUpPanel dans votre app/build.gradle, la question est de savoir comment l'inclure ?
Si tel est le cas, la première chose à garder à l'esprit est qu'un projet ne peut pas avoir plus d'un paramètres.gradle.Pour être plus précis, il le recherche uniquement dans le dossier racine et l'utilise s'il s'y trouve.Alors le paramètres.gradle dans RootFolder/bibliothèques/AndroidSlidingUpPanel/ sera ignoré.Il semble que vous ayez correctement configuré un include
à la bibliothèque SlidingUpPanel dans Dossier racine/settings.gradle, donc c'est bien :
include ':libraries:AndroidSlidingUpPanel:library'
pour inclure une dépendance dans votre application, vous utilisez un compile project
déclaration et donnez-lui le même chemin :
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'])
}
Si vous utilisez Android Studio (cela devrait également fonctionner avec les projets basés sur Gradle dans IntelliJ Community Edition), vous pouvez configurer des dépendances sur les modules à partir de la boîte de dialogue Structure du projet via Modules > Votre module > Dépendances > + > Dépendance des modules:
Si vous avez ajouté le module à votre paramètres.gradle fichier comme vous l'avez déjà et avez synchronisé votre projet avec les fichiers Gradle, le module SlidingUpPanel devrait apparaître dans la vue Projet de l'EDI et devrait apparaître comme un choix de module dans cette liste de dépendances.