Gradle を使用して AndroidSlidingUpPanel を IntelliJ IDEA プロジェクトに追加する

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

質問

Gradle を使用して IntelliJ IDEA でプロジェクトを作成し、それに 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']
        }
    }
}

ルートフォルダー/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'])
}
役に立ちましたか?

解決

ただし、SlidingUpPanel への依存関係がないため、どのようなビルド エラーが発生しているのか、正確な質問は何なのかが明確ではありません。 アプリ/ビルド.gradle, 、問題はそれをどのように含めるかです。

その場合、最初に心に留めておくべきことは、プロジェクトには複数のプロジェクトを含めることはできないということです。 設定.gradle. 。より正確に言うと、ルート フォルダー内でのみ検索し、存在する場合はそれを使用します。それで、 設定.gradleRootFolder/ライブラリ/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 を使用している場合 (IntelliJ Community Edition の Gradle ベースのプロジェクトでも動作するはずです)、プロジェクト構造ダイアログからモジュールの依存関係を設定できます。 モジュール > あなたのモジュール > 依存関係 > + > モジュールの依存関係:

Project Structure dialog showing how to add a module dependency

モジュールを 設定.gradle すでに持っているファイルを作成し、プロジェクトを Gradle ファイルに同期すると、SlidingUpPanel モジュールが IDE のプロジェクト ビューに表示され、その依存関係リストにモジュールの選択肢として表示されるはずです。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top