(爬坑)React-Native項目運行之路

追隨著時代的腳步(?)况凉,采取著“還有頭發(fā)谚鄙,還能學(xué)”的方針,我從GitHub下載了React-Native項目刁绒,準(zhǔn)備開始學(xué)習(xí)......
然后我就進入了報錯天堂......
我承認(rèn)我的英文水平全靠看報錯提升的....


環(huán)境:macOS
Xcode:Version 10.1
Android Studio:Version 3.2

以下是遇到的報錯和它的解決方法....至于為什么會報錯闷营,為什么這樣解決,別問我知市,我也不知道......等哪天我研究透了可能再來補充.......


報錯1:Cannot find entry file index.android.js in any of the roots

在react native以前的版本傻盟,index.android.js與index.ios.js是分開的兩個文件,在最新版本中這兩個文件合并成index.js一個文件了嫂丙。但是如果你在創(chuàng)建項目之后直接運行娘赴,肯定會報Cannot find entry file index.android.js in any of the roots這種類似的錯誤,因為在根目錄下已經(jīng)不存在index.anroid.js和index.ios.js這兩個文件跟啤,所以肯定不會檢索到诽表,你更改App.js的內(nèi)容后更不可能生效。(https://www.cnblogs.com/honeynm/p/9007072.html

解決方法:

  • 創(chuàng)建assets目錄(android/app/src/main/assets)
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/
  • 之后assets目錄下就會生成

  • 之后在運行react-native run-android

  • PS:有個很奇怪的點是隅肥,當(dāng)我改動了文件竿奏,要在Android Studio上跑的時候,需要把assets文件夾里面的文件刪除腥放,重新進行一次上面第二個步驟泛啸,才能顯示修改,請教有沒有大佬知道是為什么秃症?

報錯2:Android 報錯 react native syntaxError:Attempted to redefine property "xxxx"

項目內(nèi)有某個屬性“xxxx”被定義了多次候址,例如:


解決方法:
需要刪除/注釋一個,這在IOS運行時是可以的种柑,但是Android會報錯宗雇。

報錯3:Android Error:Execution failed for task ':app:lintVitalRelease'

解決方法:
android/app/build.gradle里的android{}中添加

lintOptions {
    checkReleaseBuilds false
    abortOnError false
}

報錯/錯誤4:運行Android模擬器

解決方法:
用Android Studio查看項目時,我是跑在模擬器(夜神)上看效果莹规,所以這時候需要連接模擬器赔蒲,網(wǎng)上有各種連接模擬器的方法,基本都是Windows,不過方法差不多舞虱,只是Mac的地址是/你的主機名/Macintosh-HD/Applications/Nox\ App\ Player.app/Contents/MacOS欢际,如果輸入到終端沒辦法跳轉(zhuǎn)的話,就需要一級一級往下找了矾兜。
然后運行adb connect 127.0.0.1:62001损趋。

在Android Studio中,需要改成:


連接上的時候會有設(shè)備提示椅寺,如果找不到設(shè)備浑槽,重啟模擬器就好了。

報錯5:Android Error:moudle not specified

在上一個問題中返帕,配置里有個Module桐玻,一般顯示的就是項目名,如果顯示的是<no module>荆萤,并且你剛好又是第一次運行RN項目镊靴,什么也不懂,那么你需要查看一下链韭,你用Android Studio打開的是不是RN項目目錄.......
如果是偏竟,改成打開RN項目目錄下的android文件夾:)

問題6:Android打包

https://blog.csdn.net/u011272795/article/details/77161942
基本根據(jù)這個文章配置就可以打包成功了,沒有成功就要一個一個解決報錯了敞峭。

報錯7:You have not accepted the license agreements of the following SDK components

缺少對應(yīng)的包踊谋。
解決方法:
看提示(例如Android SDK Platform 23)下載相應(yīng)的包。



勾選然后下載即可旋讹。

報錯8:A problem occurred configuring project ‘:app’

解決方法:
android文件夾下創(chuàng)建local.properties殖蚕,然后寫入
sdk.dir=你本地Android SDK文件夾路徑


如果不知道sdk路徑,打開Android Studio的SDK Manager就能看到了骗村。
參考一下上一個問題的圖嫌褪。

問題9:打包發(fā)布

參考:https://blog.csdn.net/qq_38719039/article/details/80848290

問題10:IOS '......libfishhook.a'

error: Build input file cannot be found: '/Users/../node_modules/react-native/Libraries/WebSocket/libfishhook.a'

解決方法:


刪除該標(biāo)記下的libfishhook.a呀枢,然后重新添加一個就可以胚股。

報錯11:_react2.default.createContext is not a function

解決方法:
升級react版本即可:

//before:
"react": "^16.2.0",
"react-dom": "^16.2.0",
 
//after update:
"react": "^16.7.0",
"react-dom": "^16.7.0",

報錯12:Application XXX has not been registered

解決方法:
1、注冊方法寫錯

AppRegistry.registerComponent('MyDemo', () => MyDemo);

2裙秋、端口被占用
輸入react-native start琅拌,如果出現(xiàn)Packager can't listen on port 8081,就說明端口被占用摘刑,殺死進程即可进宝。

lsof -i :8081
kill -9 <PID>

報錯13:RNGestureHandlerModule.State error

解決方法:
這是在使用react-native出現(xiàn)的報錯,是因為沒有連接造成的枷恕。

react-native link react-native-gesture-handler

報錯14:Command PhaseScriptExecution failed with a nonzero exit code

運行xcode模擬器顯示的報錯党晋,是因為Xcode10是默認(rèn)選中的最新的New Build System(Default),在這個編譯系統(tǒng)的環(huán)境下,打包的CI腳本一直會報錯未玻。
解決方法:
File>Project Setting...


最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末灾而,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子扳剿,更是在濱河造成了極大的恐慌旁趟,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,509評論 6 504
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件庇绽,死亡現(xiàn)場離奇詭異锡搜,居然都是意外死亡,警方通過查閱死者的電腦和手機瞧掺,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,806評論 3 394
  • 文/潘曉璐 我一進店門耕餐,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人夸盟,你說我怎么就攤上這事蛾方。” “怎么了上陕?”我有些...
    開封第一講書人閱讀 163,875評論 0 354
  • 文/不壞的土叔 我叫張陵桩砰,是天一觀的道長。 經(jīng)常有香客問我释簿,道長亚隅,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,441評論 1 293
  • 正文 為了忘掉前任庶溶,我火速辦了婚禮煮纵,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘偏螺。我一直安慰自己行疏,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 67,488評論 6 392
  • 文/花漫 我一把揭開白布套像。 她就那樣靜靜地躺著酿联,像睡著了一般。 火紅的嫁衣襯著肌膚如雪夺巩。 梳的紋絲不亂的頭發(fā)上贞让,一...
    開封第一講書人閱讀 51,365評論 1 302
  • 那天,我揣著相機與錄音柳譬,去河邊找鬼喳张。 笑死,一個胖子當(dāng)著我的面吹牛美澳,可吹牛的內(nèi)容都是我干的销部。 我是一名探鬼主播摸航,決...
    沈念sama閱讀 40,190評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼舅桩!你這毒婦竟也來了忙厌?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,062評論 0 276
  • 序言:老撾萬榮一對情侶失蹤江咳,失蹤者是張志新(化名)和其女友劉穎逢净,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體歼指,經(jīng)...
    沈念sama閱讀 45,500評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡爹土,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,706評論 3 335
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了踩身。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片胀茵。...
    茶點故事閱讀 39,834評論 1 347
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖挟阻,靈堂內(nèi)的尸體忽然破棺而出琼娘,到底是詐尸還是另有隱情,我是刑警寧澤附鸽,帶...
    沈念sama閱讀 35,559評論 5 345
  • 正文 年R本政府宣布脱拼,位于F島的核電站,受9級特大地震影響坷备,放射性物質(zhì)發(fā)生泄漏熄浓。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,167評論 3 328
  • 文/蒙蒙 一省撑、第九天 我趴在偏房一處隱蔽的房頂上張望赌蔑。 院中可真熱鬧,春花似錦竟秫、人聲如沸娃惯。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,779評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽趾浅。三九已至,卻和暖如春拙吉,著一層夾襖步出監(jiān)牢的瞬間潮孽,已是汗流浹背揪荣。 一陣腳步聲響...
    開封第一講書人閱讀 32,912評論 1 269
  • 我被黑心中介騙來泰國打工筷黔, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人仗颈。 一個月前我還...
    沈念sama閱讀 47,958評論 2 370
  • 正文 我出身青樓佛舱,卻偏偏與公主長得像椎例,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子请祖,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,779評論 2 354

推薦閱讀更多精彩內(nèi)容