Tak, dostałem swój pierwszy projekt w ReactNative, aby uruchomić z Windows dla systemu operacyjnego Android. Wziął kasę na Macu, skonfigurowaniu go w identyczny sposób, jak próbuję uruchomić reagować menedżera pakietów używając react-native start
i pojawia się następujący błąd:Response-native start Błąd EACCESS dla setup_env.sh
child_process.js:506
throw err;
^
Error: spawnSync /Users/UserName/Desktop/Path/node_modules/react-native/local-cli/setup_env.sh EACCES
at exports._errnoException (util.js:1022:11)
at spawnSync (child_process.js:461:20)
at Object.execFileSync (child_process.js:498:13)
at Object.run (/Users/UserName/Desktop/Path/node_modules/react-native/local-cli/cliEntry.js:156:16)
at Object.<anonymous> (/usr/local/lib/node_modules/react-native-cli/index.js:117:7)
at Module._compile (module.js:570:32)
at Object.Module._extensions..js (module.js:579:10)
at Module.load (module.js:487:32)
at tryModuleLoad (module.js:446:12)
at Function.Module._load (module.js:438:3)
Mam świadomość, że to tylko stara się ustawić ulimit (limit otwartych plików) do 2048, który jest dozwolony dla użytkowników innych niż root. Próbował także uruchomić polecenie z sudo, dając mu uprawnienia root'a. Uruchamianie ulimit -a
na komputerze ujawniło limit otwartych plików 256 i spróbowałem zmienić domyślne 2048 na to. Próbowałem zwiększyć to do 4096, a także całkowicie usunąć komendę. Wydaje się, że nie ma znaczenia, co tak zawsze i błąd utrzymuje się.
Utworzono nowy projekt przy użyciu react-native init DemoProject
, a narzędzie do pakowania zaczyna się w tym folderze, więc problem jest inny?
Moja package.json jest:
{
"name": "React Native",
"version": "0.0.1",
"private": true,
"scripts": {
"start": "node node_modules/react-native/local-cli/cli.js start",
"test": "jest"
},
"dependencies": {
"native-base": "^0.5.18",
"react": "15.4.1",
"react-addons-shallow-compare": "^15.4.1",
"react-native": "0.39.2",
"react-native-drawer": "^2.3.0",
"react-native-icons": "^0.7.1",
"react-native-loading-spinner-overlay": "^0.4.1",
"react-native-md-textinput": "^2.0.4",
"react-native-overlay": "^0.5.0",
"react-native-scrollable-tab-view": "^0.7.0",
"react-native-tab-view": "0.0.40",
"react-redux": "^4.4.6",
"react-timer-mixin": "^0.13.3",
"redux": "^3.6.0"
},
"devDependencies": {
"babel-jest": "17.0.2",
"babel-preset-react-native": "1.9.0",
"jest": "17.0.3",
"react-test-renderer": "15.4.1"
},
"jest": {
"preset": "react-native"
}
}
Ponadto, jeśli to ma znaczenie mam Sinopia, browserify i przędza zainstalowane globalnie.
Po pierwsze, nie jestem pewien, czy powinienem dodać wszystkie lokalne zależności przez npm jeszcze raz na komputerze Mac, a następnie po prostu skopiować mój kod, lub że powinno być dobrze, a coś innego jest nie w porządku.
Byłoby świetnie, gdybym mógł rozwiązać ten problem bez ponownego dodawania zależności. Z góry dziękuję.
Jestem w obliczu tego problemu: 'child_process.js: 504 rzut err; ^ Błąd: spawnSync /../AwesomeProject/node_modules/react-native/local-cli/setup_env.sh EACCES' –
@JacoboKoenig, używam Ubuntu, to był problem z moim węzłem. Odinstaluj i wyczyściłem wszystkie foldery node.js, npm i węzłów z systemu. Ponownie zainstalowałem węzeł, a mój problem został rozwiązany. –
Gdybym tylko miał milion punktów do przekazania. Dziękuję Ci – SleepsOnNewspapers