{
"root": "/Users/flyboy/.dee/yozman/yoboto-app",
"reactNativePath": "/Users/flyboy/.dee/yozman/yoboto-app/node_modules/react-native",
"dependencies": {
"react-native-touchable-ripple": {
"root": "/Users/flyboy/.dee/yozman/yoboto-app/packages/react-native-touchable-ripple",
"name": "react-native-touchable-ripple",
"platforms": {
"ios": {
"sourceDir": "/Users/flyboy/.dee/yozman/yoboto-app/packages/react-native-touchable-ripple/ios",
"folder": "/Users/flyboy/.dee/yozman/yoboto-app/packages/react-native-touchable-ripple",
"pbxprojPath": "/Users/flyboy/.dee/yozman/yoboto-app/packages/react-native-touchable-ripple/ios/RNRippleView.xcodeproj/project.pbxproj",
"podfile": null,
"podspecPath": "/Users/flyboy/.dee/yozman/yoboto-app/packages/react-native-touchable-ripple/RNRippleView.podspec",
"projectPath": "/Users/flyboy/.dee/yozman/yoboto-app/packages/react-native-touchable-ripple/ios/RNRippleView.xcodeproj",
"projectName": "RNRippleView.xcodeproj",
"libraryFolder": "Libraries",
"sharedLibraries": [],
"plist": []
},
"android": null
},
"assets": [],
"hooks": {},
"params": []
},
"react-native-video": {
"root": "/Users/flyboy/.dee/yozman/yoboto-app/node_modules/react-native-video",
"name": "react-native-video",
"platforms": {
"ios": {
"sourceDir": "/Users/flyboy/.dee/yozman/yoboto-app/node_modules/react-native-video/ios",
"folder": "/Users/flyboy/.dee/yozman/yoboto-app/node_modules/react-native-video",
"pbxprojPath": "/Users/flyboy/.dee/yozman/yoboto-app/node_modules/react-native-video/ios/RCTVideo.xcodeproj/project.pbxproj",
"podfile": null,
"podspecPath": "/Users/flyboy/.dee/yozman/yoboto-app/node_modules/react-native-video/react-native-video.podspec",
"projectPath": "/Users/flyboy/.dee/yozman/yoboto-app/node_modules/react-native-video/ios/RCTVideo.xcodeproj",
"projectName": "RCTVideo.xcodeproj",
"libraryFolder": "Libraries",
"sharedLibraries": [],
"plist": []
},
"android": {
"sourceDir": "/Users/flyboy/.dee/yozman/yoboto-app/node_modules/react-native-video/android-exoplayer",
"folder": "/Users/flyboy/.dee/yozman/yoboto-app/node_modules/react-native-video",
"packageImportPath": "import com.brentvatne.react.ReactVideoPackage;",
"packageInstance": "new ReactVideoPackage()"
}
},
"assets": [],
"hooks": {},
"params": []
},
"react-native-webview": {
"root": "/Users/flyboy/.dee/yozman/yoboto-app/node_modules/react-native-webview",
"name": "react-native-webview",
"platforms": {
"ios": {
"sourceDir": "/Users/flyboy/.dee/yozman/yoboto-app/node_modules/react-native-webview/ios",
"folder": "/Users/flyboy/.dee/yozman/yoboto-app/node_modules/react-native-webview",
"pbxprojPath": "/Users/flyboy/.dee/yozman/yoboto-app/node_modules/react-native-webview/ios/RNCWebView.xcodeproj/project.pbxproj",
"podfile": null,
"podspecPath": "/Users/flyboy/.dee/yozman/yoboto-app/node_modules/react-native-webview/react-native-webview.podspec",
"projectPath": "/Users/flyboy/.dee/yozman/yoboto-app/node_modules/react-native-webview/ios/RNCWebView.xcodeproj",
"projectName": "RNCWebView.xcodeproj",
"libraryFolder": "Libraries",
"sharedLibraries": [],
"plist": []
},
"android": {
"sourceDir": "/Users/flyboy/.dee/yozman/yoboto-app/node_modules/react-native-webview/android",
"folder": "/Users/flyboy/.dee/yozman/yoboto-app/node_modules/react-native-webview",
"packageImportPath": "import com.reactnativecommunity.webview.RNCWebViewPackage;",
"packageInstance": "new RNCWebViewPackage()"
}
},
"assets": [],
"hooks": {},
"params": []
}
},
"commands": [
{
"name": "log-ios",
"description": "starts iOS device syslog tail"
},
{
"name": "run-ios",
"description": "builds your app and starts it on iOS simulator",
"examples": [
{
"desc": "Run on a different simulator, e.g. iPhone 5",
"cmd": "react-native run-ios --simulator \"iPhone 5\""
},
{
"desc": "Pass a non-standard location of iOS directory",
"cmd": "react-native run-ios --project-path \"./app/ios\""
},
{
"desc": "Run on a connected device, e.g. Max's iPhone",
"cmd": "react-native run-ios --device \"Max's iPhone\""
},
{
"desc": "Run on the AppleTV simulator",
"cmd": "react-native run-ios --simulator \"Apple TV\" --scheme \"helloworld-tvOS\""
}
],
"options": [
{
"name": "--simulator [string]",
"description": "Explicitly set simulator to use. Optionally include iOS version betweenparenthesis at the end to match an exact version: \"iPhone 6 (10.0)\"",
"default": "iPhone X"
},
{
"name": "--configuration [string]",
"description": "Explicitly set the scheme configuration to use",
"default": "Debug"
},
{
"name": "--scheme [string]",
"description": "Explicitly set Xcode scheme to use"
},
{
"name": "--project-path [string]",
"description": "Path relative to project root where the Xcode project (.xcodeproj) lives.",
"default": "ios"
},
{
"name": "--device [string]",
"description": "Explicitly set device to use by name. The value is not required if you have a single device connected."
},
{
"name": "--udid [string]",
"description": "Explicitly set device to use by udid"
},
{
"name": "--no-packager",
"description": "Do not launch packager while building"
},
{
"name": "--verbose",
"description": "Do not use xcpretty even if installed"
},
{
"name": "--port [number]",
"default": 8081
},
{
"name": "--terminal [string]",
"description": "Launches the Metro Bundler in a new window using the specified terminal path."
}
]
},
{
"name": "log-android",
"description": "starts logkitty"
},
{
"name": "run-android",
"description": "builds your app and starts it on a connected Android emulator or device",
"options": [
{
"name": "--root [string]",
"description": "Override the root directory for the android build (which contains the android directory)",
"default": ""
},
{
"name": "--variant [string]",
"description": "Specify your app's build variant",
"default": "debug"
},
{
"name": "--appFolder [string]",
"description": "Specify a different application folder name for the android source. If not, we assume is \"app\"",
"default": "app"
},
{
"name": "--appId [string]",
"description": "Specify an applicationId to launch after build.",
"default": ""
},
{
"name": "--appIdSuffix [string]",
"description": "Specify an applicationIdSuffix to launch after build.",
"default": ""
},
{
"name": "--main-activity [string]",
"description": "Name of the activity to start",
"default": "MainActivity"
},
{
"name": "--deviceId [string]",
"description": "builds your app and starts it on a specific device/simulator with the given device id (listed by running \"adb devices\" on the command line)."
},
{
"name": "--no-packager",
"description": "Do not launch packager while building"
},
{
"name": "--port [number]",
"default": 8081
},
{
"name": "--terminal [string]",
"description": "Launches the Metro Bundler in a new window using the specified terminal path."
},
{
"name": "--tasks [list]",
"description": "Run custom Gradle tasks. By default it's \"installDebug\""
},
{
"name": "--no-jetifier",
"description": "Do not run \"jetifier\" – the AndroidX transition tool. By default it runs before Gradle to ease working with libraries that don't support AndroidX yet. See more at: https://www.npmjs.com/package/jetifier.",
"default": false
}
]
}
],
"assets": [],
"platforms": {
"ios": {},
"android": {}
},
"haste": {
"providesModuleNodeModules": [
"react-native"
],
"platforms": [
"ios",
"android"
]
},
"project": {
"ios": {
"sourceDir": "/Users/flyboy/.dee/yozman/yoboto-app/ios",
"folder": "/Users/flyboy/.dee/yozman/yoboto-app",
"pbxprojPath": "/Users/flyboy/.dee/yozman/yoboto-app/ios/yoboto.xcodeproj/project.pbxproj",
"podfile": "/Users/flyboy/.dee/yozman/yoboto-app/ios/Podfile",
"podspecPath": null,
"projectPath": "/Users/flyboy/.dee/yozman/yoboto-app/ios/yoboto.xcodeproj",
"projectName": "yoboto.xcodeproj",
"libraryFolder": "Libraries",
"sharedLibraries": [],
"plist": []
},
"android": {
"sourceDir": "/Users/flyboy/.dee/yozman/yoboto-app/android/app",
"isFlat": false,
"folder": "/Users/flyboy/.dee/yozman/yoboto-app",
"stringsPath": "/Users/flyboy/.dee/yozman/yoboto-app/android/app/src/main/res/values/strings.xml",
"manifestPath": "/Users/flyboy/.dee/yozman/yoboto-app/android/app/src/main/AndroidManifest.xml",
"buildGradlePath": "/Users/flyboy/.dee/yozman/yoboto-app/android/app/build.gradle",
"settingsGradlePath": "/Users/flyboy/.dee/yozman/yoboto-app/android/settings.gradle",
"assetsPath": "/Users/flyboy/.dee/yozman/yoboto-app/android/app/src/main/assets",
"mainFilePath": "/Users/flyboy/.dee/yozman/yoboto-app/android/app/src/main/java/com/yoboto/MainApplication.java",
"packageName": "com.yoboto"
}
}
}
Environment
info Fetching system and libraries information... System: OS: macOS 10.14.5 CPU: (4) x64 Intel(R) Core(TM) i5-4690 CPU @ 3.50GHz Memory: 4.87 GB / 20.00 GB Shell: 5.3 - /bin/zsh Binaries: Node: 12.4.0 - ~/.nvm/versions/node/v12.4.0/bin/node Yarn: 1.16.0 - ~/.nvm/versions/node/v12.4.0/bin/yarn npm: 6.9.0 - ~/.nvm/versions/node/v12.4.0/bin/npm SDKs: iOS SDK: Platforms: iOS 12.2, macOS 10.14, tvOS 12.2, watchOS 5.2 Android SDK: API Levels: 27, 28, 29 Build Tools: 27.0.3, 28.0.3, 29.0.0 System Images: android-27 | Intel x86 Atom_64, android-28 | Intel x86 Atom_64, android-29 | Intel x86 Atom_64 IDEs: Android Studio: 3.4 AI-183.6156.11.34.5522156 Xcode: 10.2.1/10E1001 - /usr/bin/xcodebuild npmPackages: react: 16.8.6 => 16.8.6 react-native: 0.60.0 => 0.60.0Description
I have a project use monorepo with yarn workspace feature.
it's fail when I
cd ios && pod install.then I run
react-native configDetails
{ "root": "/Users/flyboy/.dee/yozman/yoboto-app", "reactNativePath": "/Users/flyboy/.dee/yozman/yoboto-app/node_modules/react-native", "dependencies": { "react-native-touchable-ripple": { "root": "/Users/flyboy/.dee/yozman/yoboto-app/packages/react-native-touchable-ripple", "name": "react-native-touchable-ripple", "platforms": { "ios": { "sourceDir": "/Users/flyboy/.dee/yozman/yoboto-app/packages/react-native-touchable-ripple/ios", "folder": "/Users/flyboy/.dee/yozman/yoboto-app/packages/react-native-touchable-ripple", "pbxprojPath": "/Users/flyboy/.dee/yozman/yoboto-app/packages/react-native-touchable-ripple/ios/RNRippleView.xcodeproj/project.pbxproj", "podfile": null, "podspecPath": "/Users/flyboy/.dee/yozman/yoboto-app/packages/react-native-touchable-ripple/RNRippleView.podspec", "projectPath": "/Users/flyboy/.dee/yozman/yoboto-app/packages/react-native-touchable-ripple/ios/RNRippleView.xcodeproj", "projectName": "RNRippleView.xcodeproj", "libraryFolder": "Libraries", "sharedLibraries": [], "plist": [] }, "android": null }, "assets": [], "hooks": {}, "params": [] }, "react-native-video": { "root": "/Users/flyboy/.dee/yozman/yoboto-app/node_modules/react-native-video", "name": "react-native-video", "platforms": { "ios": { "sourceDir": "/Users/flyboy/.dee/yozman/yoboto-app/node_modules/react-native-video/ios", "folder": "/Users/flyboy/.dee/yozman/yoboto-app/node_modules/react-native-video", "pbxprojPath": "/Users/flyboy/.dee/yozman/yoboto-app/node_modules/react-native-video/ios/RCTVideo.xcodeproj/project.pbxproj", "podfile": null, "podspecPath": "/Users/flyboy/.dee/yozman/yoboto-app/node_modules/react-native-video/react-native-video.podspec", "projectPath": "/Users/flyboy/.dee/yozman/yoboto-app/node_modules/react-native-video/ios/RCTVideo.xcodeproj", "projectName": "RCTVideo.xcodeproj", "libraryFolder": "Libraries", "sharedLibraries": [], "plist": [] }, "android": { "sourceDir": "/Users/flyboy/.dee/yozman/yoboto-app/node_modules/react-native-video/android-exoplayer", "folder": "/Users/flyboy/.dee/yozman/yoboto-app/node_modules/react-native-video", "packageImportPath": "import com.brentvatne.react.ReactVideoPackage;", "packageInstance": "new ReactVideoPackage()" } }, "assets": [], "hooks": {}, "params": [] }, "react-native-webview": { "root": "/Users/flyboy/.dee/yozman/yoboto-app/node_modules/react-native-webview", "name": "react-native-webview", "platforms": { "ios": { "sourceDir": "/Users/flyboy/.dee/yozman/yoboto-app/node_modules/react-native-webview/ios", "folder": "/Users/flyboy/.dee/yozman/yoboto-app/node_modules/react-native-webview", "pbxprojPath": "/Users/flyboy/.dee/yozman/yoboto-app/node_modules/react-native-webview/ios/RNCWebView.xcodeproj/project.pbxproj", "podfile": null, "podspecPath": "/Users/flyboy/.dee/yozman/yoboto-app/node_modules/react-native-webview/react-native-webview.podspec", "projectPath": "/Users/flyboy/.dee/yozman/yoboto-app/node_modules/react-native-webview/ios/RNCWebView.xcodeproj", "projectName": "RNCWebView.xcodeproj", "libraryFolder": "Libraries", "sharedLibraries": [], "plist": [] }, "android": { "sourceDir": "/Users/flyboy/.dee/yozman/yoboto-app/node_modules/react-native-webview/android", "folder": "/Users/flyboy/.dee/yozman/yoboto-app/node_modules/react-native-webview", "packageImportPath": "import com.reactnativecommunity.webview.RNCWebViewPackage;", "packageInstance": "new RNCWebViewPackage()" } }, "assets": [], "hooks": {}, "params": [] } }, "commands": [ { "name": "log-ios", "description": "starts iOS device syslog tail" }, { "name": "run-ios", "description": "builds your app and starts it on iOS simulator", "examples": [ { "desc": "Run on a different simulator, e.g. iPhone 5", "cmd": "react-native run-ios --simulator \"iPhone 5\"" }, { "desc": "Pass a non-standard location of iOS directory", "cmd": "react-native run-ios --project-path \"./app/ios\"" }, { "desc": "Run on a connected device, e.g. Max's iPhone", "cmd": "react-native run-ios --device \"Max's iPhone\"" }, { "desc": "Run on the AppleTV simulator", "cmd": "react-native run-ios --simulator \"Apple TV\" --scheme \"helloworld-tvOS\"" } ], "options": [ { "name": "--simulator [string]", "description": "Explicitly set simulator to use. Optionally include iOS version betweenparenthesis at the end to match an exact version: \"iPhone 6 (10.0)\"", "default": "iPhone X" }, { "name": "--configuration [string]", "description": "Explicitly set the scheme configuration to use", "default": "Debug" }, { "name": "--scheme [string]", "description": "Explicitly set Xcode scheme to use" }, { "name": "--project-path [string]", "description": "Path relative to project root where the Xcode project (.xcodeproj) lives.", "default": "ios" }, { "name": "--device [string]", "description": "Explicitly set device to use by name. The value is not required if you have a single device connected." }, { "name": "--udid [string]", "description": "Explicitly set device to use by udid" }, { "name": "--no-packager", "description": "Do not launch packager while building" }, { "name": "--verbose", "description": "Do not use xcpretty even if installed" }, { "name": "--port [number]", "default": 8081 }, { "name": "--terminal [string]", "description": "Launches the Metro Bundler in a new window using the specified terminal path." } ] }, { "name": "log-android", "description": "starts logkitty" }, { "name": "run-android", "description": "builds your app and starts it on a connected Android emulator or device", "options": [ { "name": "--root [string]", "description": "Override the root directory for the android build (which contains the android directory)", "default": "" }, { "name": "--variant [string]", "description": "Specify your app's build variant", "default": "debug" }, { "name": "--appFolder [string]", "description": "Specify a different application folder name for the android source. If not, we assume is \"app\"", "default": "app" }, { "name": "--appId [string]", "description": "Specify an applicationId to launch after build.", "default": "" }, { "name": "--appIdSuffix [string]", "description": "Specify an applicationIdSuffix to launch after build.", "default": "" }, { "name": "--main-activity [string]", "description": "Name of the activity to start", "default": "MainActivity" }, { "name": "--deviceId [string]", "description": "builds your app and starts it on a specific device/simulator with the given device id (listed by running \"adb devices\" on the command line)." }, { "name": "--no-packager", "description": "Do not launch packager while building" }, { "name": "--port [number]", "default": 8081 }, { "name": "--terminal [string]", "description": "Launches the Metro Bundler in a new window using the specified terminal path." }, { "name": "--tasks [list]", "description": "Run custom Gradle tasks. By default it's \"installDebug\"" }, { "name": "--no-jetifier", "description": "Do not run \"jetifier\" – the AndroidX transition tool. By default it runs before Gradle to ease working with libraries that don't support AndroidX yet. See more at: https://www.npmjs.com/package/jetifier.", "default": false } ] } ], "assets": [], "platforms": { "ios": {}, "android": {} }, "haste": { "providesModuleNodeModules": [ "react-native" ], "platforms": [ "ios", "android" ] }, "project": { "ios": { "sourceDir": "/Users/flyboy/.dee/yozman/yoboto-app/ios", "folder": "/Users/flyboy/.dee/yozman/yoboto-app", "pbxprojPath": "/Users/flyboy/.dee/yozman/yoboto-app/ios/yoboto.xcodeproj/project.pbxproj", "podfile": "/Users/flyboy/.dee/yozman/yoboto-app/ios/Podfile", "podspecPath": null, "projectPath": "/Users/flyboy/.dee/yozman/yoboto-app/ios/yoboto.xcodeproj", "projectName": "yoboto.xcodeproj", "libraryFolder": "Libraries", "sharedLibraries": [], "plist": [] }, "android": { "sourceDir": "/Users/flyboy/.dee/yozman/yoboto-app/android/app", "isFlat": false, "folder": "/Users/flyboy/.dee/yozman/yoboto-app", "stringsPath": "/Users/flyboy/.dee/yozman/yoboto-app/android/app/src/main/res/values/strings.xml", "manifestPath": "/Users/flyboy/.dee/yozman/yoboto-app/android/app/src/main/AndroidManifest.xml", "buildGradlePath": "/Users/flyboy/.dee/yozman/yoboto-app/android/app/build.gradle", "settingsGradlePath": "/Users/flyboy/.dee/yozman/yoboto-app/android/settings.gradle", "assetsPath": "/Users/flyboy/.dee/yozman/yoboto-app/android/app/src/main/assets", "mainFilePath": "/Users/flyboy/.dee/yozman/yoboto-app/android/app/src/main/java/com/yoboto/MainApplication.java", "packageName": "com.yoboto" } } }I guess this comes with this commit c9aec25
cli/packages/platform-ios/native_modules.rb
Lines 45 to 49 in c9aec25
for podspec
RNRippleViewat #L46absolute_podspec_pathis/Users/flyboy/.dee/yozman/yoboto-app/packages/react-native-touchable-ripple/RNRippleView.podspec.it's already relative_path and doesn't contain character
node_modules.so
relative_podspec_pathat #L47 will be not correct.Reproducible Demo