1. ホーム
  2. android

[解決済み] ルートプロジェクト 'myproject' にパス ':mypath' を持つプロジェクトが見つかりませんでした。

2023-03-26 18:18:14

質問

Eclipseからandroid studioに移行しました。 0.5.8 というエラーが発生しました。 Project with path ':progressfragment' could not be found in root project 'project_name'.

プロジェクトの構造:

ライブラリ

完全な構造 (編集 2) :

Gradle.buildです。

apply plugin: 'android'

dependencies {
    compile fileTree(dir: 'libs', include: '*.jar')
    compile project(':progressfragment')
    compile project(':viewpagerindicatorlibrary')
    compile project(':ZBarScannerActivity')
    compile project(':google-play-services_lib')
    compile project(':SwitchCompatLibrary')
    compile project(':actionbarsherlock')
    compile project(':librarymultichoice')
}



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

android {
    compileSdkVersion 14
    buildToolsVersion "19.0.1"

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

        // Move the tests to tests/java, tests/res, etc...
        instrumentTest.setRoot('tests')

        // Move the build types to build-types/<type>
        // For instance, build-types/debug/java, build-types/debug/AndroidManifest.xml, ...
        // This moves them out of them default location under src/<type>/... which would
        // conflict with src/ being used by the main source set.
        // Adding new build types or product flavors should be accompanied
        // by a similar customization.
        debug.setRoot('build-types/debug')
        release.setRoot('build-types/release')
    }
}

どのように解決するのですか?

を持つだけでは十分ではありません。 compile project("xy") だけでは不十分です。 すべてのモジュールを含むようにルートプロジェクトを設定する必要があります(または、それらをサブプロジェクトと呼びますが、ここでは正しい言葉ではないかもしれません)。

を作成します。 settings.gradleを作成します。 ファイルをプロジェクトのルートに作成し、これを追加します。

include ':progressfragment'

をそのファイルに追加します。そしてGradleを同期させればうまくいくはずです。

また、一つ面白い余談があります。 もし、':unexistingProject' を 設定.gradle (まだ作成していないプロジェクト) に ':unexistingProject' を追加すると、Gradle は同期後にこのプロジェクト用のフォルダを作成します (少なくとも Android Studio ではこのように動作します)。そこで、エラーを回避するために settings.gradle のエラーを回避するために、既存のファイルからプロジェクトを作成する場合は、まずファイルにその行を追加し、同期してから、作成されたフォルダに既存のコードを配置します。これにより、プロジェクトフォルダを削除した後、syncフォルダが空になることがあります。 settings.gradle .