LoginSignup
0
0

More than 3 years have passed since last update.

【ReactNative】native_modules.gradle line 191でハマった話

Posted at

概要

新任者の端末内に研修用の簡単なReactNativeのプロジェクトを作った時にハマった話。

発生経緯

デスクトップに「新任研修」というフォルダを作り、既に他端末で動作確認済みのReactNativeプロジェクトをまるっとコピー。
念のため動作確認のためrun-androidさせてみる

react-native run-android

すると下記のエラーが発生

/Users/lukaskurucz/Git/app-name/node_modules/@react-native-community/cli-platform-android/native_modules.gradle' line: 191

なんじゃこりゃ。native_modules.gradleなんて見たこともないモジュールがエラーを吐いている。

ゴミが残ってるのかもと、一度クリーンしてみる。

cd android && gradlew clean

が、そもそもcleanが同じエラーで通らない。

原因

仕方がないのでnative_modules.gradleとやらを見てみることにする。
どうやら下記の行あたりでエラーが出ているようだ。

native_modules.gradle
def json = new JsonSlurper().parseText(reactNativeConfigOutput)
this.packageName = json["project"]["android"]["packageName"]

これだけ見ていても訳が分からないので、とりあえずJSONにパースする前のreactNativeConfigOutputをログに吐かせてみる。

native_modules.gradle
// reactNativeConfigOutputをログに書き出し
this.logger.info(reactNativeConfigOutput)
def json = new JsonSlurper().parseText(reactNativeConfigOutput)
this.packageName = json["project"]["android"]["packageName"]

するとreactNativeConfigOutputが見事に文字化けしているではないか!!
しかも化けているのはプロジェクトのパス部分。

あ、そういえばさっき・・・

デスクトップに「新任研修」というフォルダを作り...

絶対それが原因だ!!
と思い、試しに「新任研修」を「work」にリネームしてみると問題なく動作するようになった。

パスに日本語を含めるという初歩的なミスでしたとさ。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0