10

これまで Gradle を使用したことがないので、完全に迷っています。

SlidingMenu をライブラリとして追加し、プロジェクトからすべての SlindingMenu にアクセスできますが、コンパイルしようとすると次のエラーが発生します。

Gradle: package com.jeremyfeinstein.slidingmenu.lib does not exist

私はAndroid Studio(IntelliJ)を使用しています。これが私のgradle.buildです

buildscript {
    repositories {
        maven { url 'http://repo1.maven.org/maven2' }
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:0.4'
    }
}
apply plugin: 'android'
dependencies {
    compile files('libs/android-support-v4.jar')
}
android {
    compileSdkVersion 17
    buildToolsVersion "17.0.0"

    defaultConfig {
        minSdkVersion 8
        targetSdkVersion 17
    }
}

前もって感謝します

4

6 に答える 6

14

SlidingMenu.jar を libs フォルダーに追加したと仮定して、それを右クリック -> ライブラリとして追加します。次に、gradle.build を変更します。

前:

dependencies {
    compile files('libs/android-support-v4.jar')
}

後:

dependencies {
    compile fileTree(dir: 'libs', include: '*.jar')
}

これには、すべての jar ファイルが含まれます。

于 2013-05-21T12:13:59.420 に答える
2

私も同じ問題を抱えていました。Androidライブラリとしてgradle-buildを使用してslide-menu-libを追加すると、助けになりました。

私のプロジェクト構造は次のとおりです。

-MyDemoProject
-build.gradle
-settings.gradle
--MyDemo
--build.gradle
--libs
---sliding-menu-lib
----res
----src
----AndroidManifest.xml
----build.gradle
--src

すべてのものを動作させるには、settings.bundle に次の内容が含まれている必要があります。

include ':MyDemo' ':MyDemo:libs:sliding-menu-lib'

Android Studio を使用して gradle を使用してプロジェクトをビルドする際にエラーを回避できるトリックがここにあります。これは、 Android Tools Manualに従って使用する必要がありますが、相対 projectDir パスの問題':libs:sliding-menu-lib'により機能しません。

次のMyDemo/build.gradleような依存関係が含まれている必要があります。

dependencies {
    compile 'com.android.support:support-v4:18.0.0'
    ...
    compile fileTree(dir: 'libs', include: '*.jar')
    compile project(':MyDemo:libs:sliding-menu-lib')

}

そして、あなたは次のsliding-menu-lib/build.gradleようになるはずです:

buildscript {
    repositories {
        mavenCentral()
    }

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

apply plugin: 'android-library'

android {
    compileSdkVersion 14
    buildToolsVersion "18.0.1"

    defaultConfig {
        minSdkVersion 9
        targetSdkVersion 14
    }

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

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

sourceSetsファイル構造を変更したくない場合があるため、最も重要な部分はセクションを扱いsliding-menu-libます(現在のgradleのデフォルトではありません)

于 2013-09-05T12:23:42.103 に答える
0

ソースツールからのデフォルトのインポートを使用して、以前のライブラリをすべて追加しました。SlidingMenu では、Maven でインポートを使用し、SlidingMenu のプロジェクト設定からすべての Maven 依存関係を削除し、サポート ライブラリを再インポートしました。これにより、ほとんどの問題が解決されたようです。

于 2013-06-20T14:10:37.920 に答える
0

モジュールがスタンドアロン アプリではなく単なるライブラリである場合、そのモジュールには gradle が含まれている必要があります。

apply plugin: 'android-library'

それ以外の

apply plugin: 'android'
于 2013-10-30T16:41:31.350 に答える