4

既存の Android プロジェクトで使用される反応ネイティブ ライブラリを 1 つ作成したいと考えています。Facebook のドキュメントによると、Android プロジェクトの build.gradle ファイルに以下の行を追加する必要があります。

allprojects {
    repositories {
        ...
        maven {
            // All of React Native (JS, Android binaries) is installed from npm
            url "$rootDir/node_modules/react-native/android"
        }
    }
    ...
}

さて、私の問題は、Android プロジェクトが複数の反応ネイティブ プロジェクトを使用する可能性があり、それぞれが異なるバージョンの反応ネイティブを使用している可能性があることです。たとえば、AndroidProject "project1" には、proj1 と proj2 の 2 つの反応ネイティブ プロジェクトが含まれる場合があります。Proj1 は react-native バージョン 0.23.1 で作成され、proj2 は react-native バージョン 0.29.1 で作成されています。

これら2つのプロジェクトに異なるバージョンのreact-nativeを使用するようにAndroidプロジェクトに具体的に指示するにはどうすればよいですか?

ルートプロジェクトのbuild.gradleファイルに以下の行を追加することで、プロジェクト固有の依存関係について言及できると思いました。

project(":proj1") {
    repositories {
        maven {
             // All of React Native (JS, Android binaries) is installed from npm
            url "$rootDir/proj1/node_modules/react-native/android"
        }
    }
}
project(":proj2") {
    repositories {
        maven {
             // All of React Native (JS, Android binaries) is installed from npm
            url "$rootDir/proj2/node_modules/react-native/android"
        }
    }
}

しかし、リポジトリはこのように言及できないようです。project(":app") は proj1 と proj2 に依存し、プロジェクトをビルドするには、project(":app ") 同じように。

誰かがすでに同様の問題を解決しましたか? これを処理する方法について何か提案はありますか?

さらに情報が必要な場合はお知らせください。

4

0 に答える 0