Closed harrymash2006 closed 1 year ago
I am getting this Error in Xcode while building & Archive.
/node_modules/@react-native-community/cli/build/index.js:156
cmd.option(opt.name, opt.description ?? '', opt.parse || (val => val), typeof opt.default === 'function' ? opt.default(rest[0]) : opt.default);
^
SyntaxError: Unexpected token '?'
at wrapSafe (internal/modules/cjs/loader.js:1072:16)
at Module._compile (internal/modules/cjs/loader.js:1122:27)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1178:10)
+ [[ '' != true ]]
+ cp /Users/saravanakumar/Library/Developer/Xcode/DerivedData/ReactNative-exomamucwknejgecicizjaevjbgd/Build/Products/Release-iphonesimulator/main.jsbundle /Users/saravanakumar/Library/Developer/Xcode/DerivedData/ReactNative-exomamucwknejgecicizjaevjbgd/Build/Products/Release-iphonesimulator/ReactNative.app/
cp: /Users/saravanakumar/Library/Developer/Xcode/DerivedData/ReactNative-exomamucwknejgecicizjaevjbgd/Build/Products/Release-iphonesimulator/main.jsbundle: No such file or directory
+ BUNDLE_FILE=/Users/saravanakumar/Library/Developer/Xcode/DerivedData/ReactNative-exomamucwknejgecicizjaevjbgd/Build/Products/Release-iphonesimulator/ReactNative.app/main.jsbundle
+ [[ false != true ]]
+ [[ ! -f /Users/saravanakumar/Library/Developer/Xcode/DerivedData/ReactNative-exomamucwknejgecicizjaevjbgd/Build/Products/Release-iphonesimulator/ReactNative.app/main.jsbundle ]]
+ echo 'error: File /Users/saravanakumar/Library/Developer/Xcode/DerivedData/ReactNative-exomamucwknejgecicizjaevjbgd/Build/Products/Release-iphonesimulator/ReactNative.app/main.jsbundle does not exist. This must be a bug with React Native, please report it here: https://github.com/facebook/react-native/issues'
error: File /Users/saravanakumar/Library/Developer/Xcode/DerivedData/ReactNative-exomamucwknejgecicizjaevjbgd/Build/Products/Release-iphonesimulator/ReactNative.app/main.jsbundle does not exist. This must be a bug with React Native, please report it here: https://github.com/facebook/react-native/issues
+ exit 2
Output of npx react-native info
info Fetching system and libraries information...
System:
OS: macOS 12.6
CPU: (16) x64 Intel(R) Core(TM) i9-9880H CPU @ 2.30GHz
Memory: 72.03 MB / 16.00 GB
Shell: 5.8.1 - /bin/zsh
Binaries:
Node: 16.15.1 - ~/.nvm/versions/node/v16.15.1/bin/node
Yarn: 1.22.5 - /usr/local/bin/yarn
npm: 8.11.0 - ~/.nvm/versions/node/v16.15.1/bin/npm
Watchman: 2022.01.03.00 - /usr/local/bin/watchman
Managers:
CocoaPods: 1.11.2 - /usr/local/bin/pod
SDKs:
iOS SDK:
Platforms: DriverKit 21.4, iOS 15.5, macOS 12.3, tvOS 15.4, watchOS 8.5
Android SDK:
API Levels: 23, 26, 28, 30, 31, 33
Build Tools: 22.0.1, 28.0.3, 29.0.2, 29.0.3, 30.0.2, 30.0.3, 31.0.0
System Images: android-R | Google APIs Intel x86 Atom, android-R | Google Play Intel x86 Atom
Android NDK: Not Found
IDEs:
Android Studio: 2020.3 AI-203.7717.56.2031.7678000
Xcode: 13.4.1/13F100 - /usr/bin/xcodebuild
Languages:
Java: 11.0.13 - /Library/Java/JavaVirtualMachines/jdk-11.0.13.jdk/Contents/Home/bin/javac
npmPackages:
@react-native-community/cli: Not Found
react: 18.2.0 => 18.2.0
react-native: ^0.70.1 => 0.70.1
react-native-macos: Not Found
npmGlobalPackages:
*react-native*: Not Found
/Users/hardik/Documents/GitHub/ReactNApp/node_modules/@react-native-community/cli/build/index.js:156
cmd.option(opt.name, opt.description ?? '', opt.parse || (val => val), typeof opt.default === 'function' ? opt.default(rest[0]) : opt.default);
Hi @harrymash2006 Thanks for reporting this issue.
It seems like this issue is related to the CLI. Can I ask you to open another issue against this other repository:
https://github.com/react-native-community/cli/issues
Please link against this one and we'll sort things out.
same bug after updating to react 0.70.1 from 0.67.4
if i do npx react-native info, the cmd return me: Unexpected token '?'
I also ran into this! The issue at least in my case was the node export was pointing to the default installed version on the Mac, NOT the nvm managed version. On iOS this can be seen by a log Node found at: ${NODE_BINARY}
.
This was due to not having a .xcode.env file (whoops RN updating and missed this) and not having my NVM_DIR set in my bash path settings (since Xcode uses bash instead of zsh), which I did via these instructions.
This might not be the exact issue observed here, but maybe it helps somebody!
Update note js to 16 resolve this problem
Update to NodeJS 16 is the solution for SyntaxError: Unexpected token '?'
and not i am able to build the App using XCode.
Yes, I'm seeing this as well... I tried these node versions:
nvm use 16.13.1 nvm use 16.17.1 nvm use 18.9.1
[!] Invalid `Podfile` file: 859: unexpected token at 'info Run CLI with --verbose flag for more details.
'.
# from /Users/neo/Projects/vatom-inc/wallet/apps/wallet/ios/Podfile:44
# -------------------------------------------
# use_expo_modules!
> config = use_native_modules!
#
# -------------------------------------------
Couldn't install Pods. Updating the Pods project and trying again...
Command `pod install` failed.
└─ Cause: Invalid `Podfile` file: 859: unexpected token at 'info Run CLI with --verbose flag for more details.
'.
# from /Users/neo/Projects/vatom-inc/wallet/apps/wallet/ios/Podfile:44
# -------------------------------------------
# use_expo_modules!
> config = use_native_modules!
#
# -------------------------------------------
I confirmed the node -v is in my path as well:
➜ node -v
v16.13.1
➜ which node
/Users/neo/.nvm/versions/node/v16.13.1/bin/node
npx react-native info
warn Package @sentry/react-native contains invalid configuration: "dependency.platforms.ios.sharedLibraries" is not allowed,"dependency.hooks" is not allowed. Please verify it's properly linked using "react-native config" command and contact the package maintainers about this.
warn Package react-native-flipper contains invalid configuration: "dependency.platforms.ios.project" is not allowed. Please verify it's properly linked using "react-native config" command and contact the package maintainers about this.
info Fetching system and libraries information...
System:
OS: macOS 12.6
CPU: (10) arm64 Apple M1 Max
Memory: 4.37 GB / 64.00 GB
Shell: 5.8.1 - /bin/zsh
Binaries:
Node: 16.13.1 - ~/.nvm/versions/node/v16.13.1/bin/node
Yarn: 1.22.19 - ~/Projects/vatom-inc/wallet/node_modules/.bin/yarn
npm: 8.1.2 - ~/.nvm/versions/node/v16.13.1/bin/npm
Watchman: 2022.08.15.00 - /opt/homebrew/bin/watchman
Managers:
CocoaPods: 1.11.3 - /opt/homebrew/bin/pod
SDKs:
iOS SDK:
Platforms: DriverKit 21.4, iOS 16.0, macOS 12.3, tvOS 16.0, watchOS 9.0
Android SDK:
API Levels: 29, 30, 31, 32, 33
Build Tools: 29.0.2, 30.0.2, 30.0.3, 31.0.0, 32.0.0, 32.1.0, 33.0.0, 33.0.0
System Images: android-30 | Intel x86 Atom_64, android-30 | Google APIs Intel x86 Atom, android-32 | Google APIs ARM 64 v8a
Android NDK: Not Found
IDEs:
Android Studio: 2021.2 AI-212.5712.43.2112.8815526
Xcode: 14.0.1/14A400 - /usr/bin/xcodebuild
Languages:
Java: 11.0.11 - /usr/bin/javac
npmPackages:
@react-native-community/cli: Not Found
react: 18.2.0 => 18.2.0
react-native: 0.69.5 => 0.69.5
react-native-macos: Not Found
npmGlobalPackages:
*react-native*: Not Found
info React Native v0.70.1 is now available (your project is running on v0.69.5).
info Changelog: https://github.com/facebook/react-native/releases/tag/v0.70.1.
info Diff: https://react-native-community.github.io/upgrade-helper/?from=0.69.5.
info To upgrade, run "react-native upgrade".
Also seeing this exact issue when trying to archive app in xcode after upgrading RN from 0.69.4 to 0.70.1
Node 16 is installed via nvm. Everything worked perfectly until now.
EDIT: Solved by
1) manually removing an old version of node (in /usr/local/bin/) that was apparently used by the sh shell (default shell used by xcode)
2) linking the nvm node installation by running ln -s $(which node) /usr/local/bin/node
in a sh shell
I had the exact same issue. Running npx react-native run-android
worked fine. Opening the upgraded project in Android Studio on my Ubuntu 22.04 machine resulted in the mentioned error.
In my case, I figured out, that i had two versions of node installed:
Gradle seemed to use the system-wide Node 12 from /usr/bin/node, because it doesn't pick up the NVM Paths. So i removed it from the system via apt remove nodejs
.
As expected, opening the project again in Android Studio now resulted in an error, because node was not found:
Caused by: java.io.IOException: Cannot run program "node" (in directory "/home/chris/documents/my-app/android"): error=2, File or directory not found
Finally I manually linked the "system node binary" to my NVM installed version:
ln -s $(which node) /usr/bin/node
Now my project is building fine. Maybe that helps.
Closing as this issue is related to local environment setup
Fixed this by creating a .nvmrc containing the desired node version in the home directory.
Update note js to 16 resolve this problem
Thanks. It works on me. If the advice is useless for someone, please make sure that you had changed the default version of node on Terminal rather than Zsh or anything else
I had it fixed by starting my app with npx react-native start
instead of react-native start
.
I had one react-native installed with volta at ~/.volta/bin/react-native
.
Versions:
After upgrading react-native from 0.69.0 to 0.70.0 I started getting this error when I tried to start my application with react-native start
:
cmd.option(opt.name, opt.description ?? '', opt.parse || (val => val) [...] SyntaxError: Unexpected token '?'
.
For some reason the Metro of my globally installed react-native wasn't using the node 18 I have globally installed. I checked for other node versions but they weren't there. So I removed the react-native installed with volta with volta uninstall react-native-cli
and started using npx
to force the react-native from within my project's node_modules to be used.
PS: I did not needed to remove my globally installed react-native, only did it to avoid confusion in the future if I forget to add the npx
suffix.
I had the exact same issue. Running
npx react-native run-android
worked fine. Opening the upgraded project in Android Studio on my Ubuntu 22.04 machine resulted in the mentioned error.In my case, I figured out, that i had two versions of node installed:
* **System-wide Node 12** (!!) via package manager (/usr/bin/node) * **Locally NVM managed Node 17.2.0** (~/.nvm/versions/node/v17.2.0/bin/node)
Gradle seemed to use the system-wide Node 12 from /usr/bin/node, because it doesn't pick up the NVM Paths. So i removed it from the system via
apt remove nodejs
.As expected, opening the project again in Android Studio now resulted in an error, because node was not found:
Caused by: java.io.IOException: Cannot run program "node" (in directory "/home/chris/documents/my-app/android"): error=2, File or directory not found
Finally I manually linked the "system node binary" to my NVM installed version:
ln -s $(which node) /usr/bin/node
Now my project is building fine. Maybe that helps.
Thank you, worked for me
update to veroisn 18.18.2 and the issue was gone. i was using 13.2.1
Error : Caused by: java.lang.Exception: /home//Documents//node_modules/react-native/node_modules/@react-native-community/cli/build/index.js:119 cmd.option(opt.name, opt.description ?? '', opt.parse || (val => val), typeof opt.default === 'function' ? opt.default(rest[0]) : opt.default); ^SyntaxError: Unexpected token '?' at wrapSafe (internal/modules/cjs/loader.js:915:16) at Module._compile (internal/modules/cjs/loader.js:963:27) at Object.Module._extensions..js (internal/modules/cjs/loader.js:1027:10) at Module.load (internal/modules/cjs/loader.js:863:32) at Function.Module._load (internal/modules/cjs/loader.js:708:14) at Module.require (internal/modules/cjs/loader.js:887:19) at require (internal/modules/cjs/helpers.js:74:18) at Object.
i tried with node v18.16.0 and v16.15.0 but still facing issue my React native version : 0.71.4 React version : 18.2.0
Also seeing this exact issue when trying to archive app in xcode after upgrading RN from 0.69.4 to 0.70.1
Node 16 is installed via nvm. Everything worked perfectly until now.
EDIT: Solved by
1. manually removing an old version of node (in /usr/local/bin/) that was apparently used by the sh shell (default shell used by xcode) 2. linking the nvm node installation by running `ln -s $(which node) /usr/local/bin/node` in a sh shell
this solved it for me, thank you
Try and it may work(node v18.19.1):
Thanks @qilovehua and @hebertcisco, you guys actually helped me figure out what was happening.
I've migrated a project from a Mac to a Linux machine and started facing this error, on a project that was fine.
So, apparently Android Studio wasn't aware of node location. I've made a symbolic link from nvm installation to /usr/local/bin/node
I solved this issue by using the correct version of Java, for my end I used Java 17 using sdkman.
use this nvm alias default 18
fixed my issue
Description
Hi guys,
just created a new project and it is throwing this error when doing archive on iOS and when doing build on Android
Showing Recent Messages
/Users/hardik/Documents/GitHub/ReactNApp/node_modules/@react-native-community/cli/build/index.js:156
Please advice how to fix this. thanks
Version
0.70.1
Output of
npx react-native info
System: OS: macOS 13.0 CPU: (8) x64 Intel(R) Core(TM) i5-1038NG7 CPU @ 2.00GHz Memory: 365.09 MB / 16.00 GB Shell: 5.8.1 - /bin/zsh Binaries: Node: 16.15.0 - ~/.nvm/versions/node/v16.15.0/bin/node Yarn: 1.17.3 - /usr/local/bin/yarn npm: 8.5.5 - ~/.nvm/versions/node/v16.15.0/bin/npm Watchman: 2022.02.28.00 - /usr/local/bin/watchman Managers: CocoaPods: 1.11.3 - /usr/local/bin/pod SDKs: iOS SDK: Platforms: DriverKit 21.4, iOS 16.0, macOS 12.3, tvOS 16.0, watchOS 9.0 Android SDK: API Levels: 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33 Build Tools: 29.0.2, 29.0.3, 30.0.1, 30.0.2, 30.0.3, 31.0.0, 32.0.0, 33.0.0 System Images: android-21 | Google APIs Intel x86 Atom, android-22 | Google APIs Intel x86 Atom, android-23 | Google APIs Intel x86 Atom, android-23 | Google APIs Intel x86 Atom_64, android-24 | Android TV Intel x86 Atom, android-24 | Intel x86 Atom, android-24 | Google Play Intel x86 Atom, android-25 | Google APIs ARM EABI v7a, android-25 | Google APIs Intel x86 Atom, android-25 | Google Play Intel x86 Atom, android-26 | Google Play Intel x86 Atom, android-27 | Intel x86 Atom, android-27 | Intel x86 Atom_64, android-27 | Google APIs Intel x86 Atom, android-27 | Google Play Intel x86 Atom, android-28 | Intel x86 Atom_64, android-28 | Google APIs Intel x86 Atom, android-28 | Google Play Intel x86 Atom, android-28 | Google Play Intel x86 Atom_64, android-29 | Google APIs Intel x86 Atom, android-29 | Google APIs Intel x86 Atom_64, android-29 | Google Play Intel x86 Atom, android-29 | Google Play Intel x86 Atom_64, android-30 | Google Play Intel x86 Atom, android-31 | Google Play Intel x86 Atom_64, android-N | Android Wear ARM EABI v7a, android-N | Android Wear Intel x86 Atom, android-N | Intel x86 Atom, android-N | Intel x86 Atom_64 Android NDK: 21.3.6528147 IDEs: Android Studio: 2021.3 AI-213.7172.25.2113.9014738 Xcode: 14.0/14A309 - /usr/bin/xcodebuild Languages: Java: 18.0.2 - /usr/bin/javac npmPackages: @react-native-community/cli: Not Found react: 18.1.0 => 18.1.0 react-native: 0.70.1 => 0.70.1 react-native-macos: Not Found npmGlobalPackages: react-native: Not Found
Steps to reproduce
Trying to build on Android Archive on iOS for app store upload
Snack, code example, screenshot, or link to a repository
https://pasteboard.co/jF639A0h1o6b.png