我想创建一个 react-native 库,供现有 Android 项目使用。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 项目可能使用多个 react-native 项目,并且每个项目可能有不同版本的 react-native。例如,AndroidProject "project1" 可能包含两个 react-native 项目:proj1 和 proj2。Proj1 使用 react-native 版本 0.23.1 编写,而 proj2 使用 react-native 版本 0.29.1 编写。
如何专门告诉我的 android 项目为这两个项目使用不同版本的 react-native?
我认为,我可以通过在根项目 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 的 react-native url ") 也是如此。
有没有人已经解决了类似的问题?关于如何处理这个问题的任何建议?
如果需要更多信息,请告诉我。