React native:未找到Android项目.也许首先运行react-native android?

uda*_*dai 76 react-native-android

我在我的React-Native项目中遇到了一个问题,该问题早先工作得很好,但突然间它停止了工作.每当我使用命令时:

react-native run-android
Run Code Online (Sandbox Code Playgroud)

我收到一个错误:

找不到Android项目.也许首先运行react-native android?

试过跑:

react-native android
Run Code Online (Sandbox Code Playgroud)

但它说:

Unrecognized command 'android' Run react-native --help to see list of all available commands

尝试后:

D:\ProjectRoot\ReactNativeProjects\AwesomeProject>react-native eject
Run Code Online (Sandbox Code Playgroud)

返回的错误是:

在D:\ ProjectRoot\ReactNativeProjects\AwesomeProject \node_modules(48ms)中扫描符号链接的文件夹name必须在app.json配置文件中定义应用程序才能定义项目名称.它不得包含任何空格或破折号.

这是app.json文件:

{
  "expo": {
    "name": "AwesomeProject",
    "description": "A very interesting project.",
    "slug": "AwesomeProject",
    "privacy": "public",
    "sdkVersion": "30.0.0",
    "platforms": ["ios", "android"],
    "ios": {
      "supportsTablet": true
    },
    "android": {
      "package": "com.project.first"
    },
    "version": "1.0.0",
    "orientation": "portrait",
    "icon": "./assets/images/icon.png",
    "splash": {
      "image": "./assets/images/splash.png",
      "resizeMode": "contain",
      "backgroundColor": "#ffffff"
    },
    "updates": {
      "fallbackToCacheTimeout": 0
    },
    "assetBundlePatterns": [
      "**/*"
    ]
  }
}
Run Code Online (Sandbox Code Playgroud)

uda*_*dai 142

我提出了这个问题并回答了自己,因为我认为它会帮助那些面临类似问题的人.由于终端中显示的错误不准确,我努力找出其背后的真正原因.

要解决此问题,请升级react-native软件包.

  1. 转到项目根目录.
  2. 键入以下命令升级命令提示符中的React本机程序包:

    react-native upgrade.

  3. 然后单击"接受"以通过y (Yes)命令提示符中键入来更新所有文件.

参考:https://github.com/facebook/react-native/issues/9312

  • 节省了一天:) (8认同)

小智 34

打开你的 React Native 项目根目录并找到 android -> app -> build -> middles -> signature_config -> debug -> out -> signature-config.json 。删除signing-config.json这个文件再试试

或者

1)有时如果我们有旧版本的 react native 并且一些新安装的包不支持旧版本。然后你必须使用 react-native upgrade 命令更新 react native 项目。

  1. 完成将当前项目更新到新版本后,此错误应该会解决。


Jos*_*nez 20

我知道这是一个古老的问题但是这些解决方案中的任何一个对我都不起作用,也许还有像我这样的人.我之前解决了运行此命令的问题run-android

react-native eject
Run Code Online (Sandbox Code Playgroud)

  • “eject”命令[已从“react-native”中删除](https://github.com/react-native-community/cli/pull/275)。 (12认同)
  • 此命令在您的项目中重新创建android和ios文件夹 (2认同)

小智 9

我必须重新设计我的 AndroidManifest.xml,因为我在某处有语法错误(我在某处有一个额外的“/”)。现在已经解决了。请非常小心你的语法...


小智 8

以管理员身份打开命令提示符并转到项目文件夹,运行 android(npx react-native run-android)


m9m*_*m9m 7

我确实喜欢这个...工作!!

  1. 在CMD项目中,运行react-native升级.
  2. 如果你仍然遇到问题,请确保在package.json中的依赖关系json中反应本机,如果没有则添加它
  3. 如果您仍然遇到问题,请使用react-native -v获取cmd中的react native版本,并检查cmd和package.json中返回的值是否相同.使用cmd中返回的值更新package.json

我的问题解决了.


Abh*_*ena 7

在最新版本的react-native中,当您尝试发出命令时,会出现此建议:

react-native eject
Run Code Online (Sandbox Code Playgroud)

扫描文件夹中D:\ ProjectRoot \ ReactNativeProjects \ AwesomeProject \ node_modules中的符号链接(48毫秒)name必须在app.json配置文件中定义应用程序以定义项目名称。它不能包含任何空格或破折号。

现在,当您发出以下命令时:

D:\ProjectRoot\ReactNativeProjects\AwesomeProject>react-native upgrade
Run Code Online (Sandbox Code Playgroud)

显示以下内容:

扫描文件夹中的D:\ ProjectRoot \ ReactNativeProjects \ AwesomeProject \ node_modules中的符号链接(56毫秒)您应该考虑使用基于Git的新升级工具。通过自动解决大多数冲突,使升级变得更加容易。要使用它:-返回旧版React Native-运行“ npm install -g react-native-git-upgrade”-运行“ react-native-git-upgrade”,请参见https://facebook.github.io “ package.json”中的/react-native/docs/upgrading.html react-native版本与“ node_modules”中的已安装版本不匹配。尝试运行“ npm install”来解决此问题。中止。

在Facebook react-native命令建议中,有一个明确的解决方案。

这些命令检查当前版本以及是否需要更新。

另请参阅:

解决“ Expo:找不到模块LogReporter”的解决方案


Ale*_*arT 6

在 Windows 中以管理员身份运行终端对我有用......其他解决方案不起作用。


New*_*Per 5

删除文件:React Native Project Root Directory 并找到 android -> app -> build -> middles ->signing_config -> debug -> out ->signing-config.json 。