Metro Bundlerで内部エラーが発生しました。詳細については、端末のエラー出力を確認してください
チェックアウト後、react-native run-Android im getting below errorと言います。
Metro Bundler has encountered an internal error, please check your terminal error output for more details
以下は私のプロジェクトのpackage.jsonです。
{
"name": "NCAPRNRedux",
"version": "0.0.1",
"private": true,
"scripts": {
"start": "node node_modules/react-native/local-cli/cli.js start",
"test": "jest"
},
"dependencies": {
"react": "16.2.0",
"react-native": "0.52.2",
"react-native-vector-icons": "^4.0.0",
"react-navigation": "^1.0.0-beta.29",
"react-redux": "^5.0.6",
"redux": "^3.7.2",
"redux-thunk": "^2.2.0"
},
"devDependencies": {
"babel-jest": "22.1.0",
"babel-plugin-transform-decorators-legacy": "^1.3.4",
"babel-preset-react-native": "^4.0.0",
"jest": "22.1.4",
"react-test-renderer": "16.2.0"
},
"jest": {
"preset": "react-native"
}
}
誰もがこの問題を抱えて解決しましたか?
このような必要な画像はありますか?
require("../assets/user.png")
はいの場合は、画像のパスを確認してください。同じ問題に直面しているので、パスを修正しただけでエラーはなくなりました。
1.Reactを再起動することをお勧めします。次のコマンドを実行するだけです。
# Kill current processes
killall node -9
# Start React - Native
react-native start
# Run Android
react-native run-Android or react-native run-ios
これでうまくいくはずです。
2.動作していない場合は、使用した画像パスを確認してください。例えば
<Image
source={require("./images/logo.png")} // check your image path you have used
>
これらのコマンドを実行します
react-native bundle --platform Android --dev false --entry-file index.js --bundle-output Android/app/src/main/assets/index.Android.bundle --assets-dest Android/app/src/main/res
このコマンドも
rm ./node_modules/react-native/local-cli/core/__fixtures__/files/package.json
その後、実行します
npm i && react-native run-Android
または、適用可能なすべてのrun-ios
私はこの問題に直面しており、ここに私がそれを修正した方法があります。
コードに問題がないことが確実な場合は、ポート8081でプロセスを再起動してみてください。
ターミナルを開き、以下のコマンドでプロセスIDを見つけます。
Sudo lsof -n -i :8081 | grep LISTEN
次にkill id
を使用します。id
はlsof
から返されます
その後、アプリケーションを実行するだけです
react-native run-Android
"react-native-vector-icons": "^4.0.0"
を削除してみてください
同じ問題に直面しました。私の場合、基本的には、importsステートメントのパスが壊れている/間違っているためです。この問題は、スタイル、コンポーネント、ルーター、レデューサー、アクションなどのすべてのインポートパスを修正し、エミュレーターを再起動してビルドを再度実行すると解決します。