weex在运行上遇到的坑

2024-08-24 07:48
文章标签 运行 遇到 weex

本文主要是介绍weex在运行上遇到的坑,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

注意:如果运行命令的时候遇到permission权限问题的话,记得在命令前面加上sudo

创建weex项目

$ weexpack create  appName

下载安装依赖包

$ cd appName && npm install

ios

$ weexpack platform add ios

android

$ weexpack platform add android

web

$ npm run build //web工程打包
$ npm run dev & npm run serve 

ios

weex run ios 或者 weexpack run ios 

android

weex run android 或者 weexpack run android

android的坑

1、首先就是环境变量的问题,环境是mac,环境变量没配置好的话,会报Enviroment variable $ANDROID_HOME not found!错误,解决方案就是打开根目录的.bash_profile文件,配置一下环境变量,配置好之后,记得退出terminal,重新打开运行

#我的sdk路径是/Users/mac/Library/Android/sdk
export ANDROID_HOME=/Users/mac/Library/Android/sdk
export PATH=$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools

2、 运行当中,有时候会报错Failed to find Build Tools revision 26.0.0错误,这个是sdk的构建工具没有这个版本,weex不会自动给我们去下载,我们可以打开weex项目的app的build.gradle,重新设置一个我们项目有的一个版本,比如可以参考其他android项目下哪个版本有的,supportLibrary的版本如果遇到错误的话,可以按照这个方式一样进行设置

3、 报下面这种错误的话,是因为dependens远程库的时候,网络不好没有下载下来,可以尝试在此运行项目可以解决

         android:app:unspecified> Could not resolve com.taobao.android:weex_sdk:0.16.0.> Could not get resource 'https://jcenter.bintray.com/com/taobao/android/weex_sdk/0.16.0/weex_sdk-0.16.0.pom'.> Could not GET 'https://jcenter.bintray.com/com/taobao/android/weex_sdk/0.16.0/weex_sdk-0.16.0.pom'.

ios的坑

用xcode打开项目,项目目录如下

platfroms-ios-WeexDemo.xcodeproj

运行项目的时候会报错

'WeexSDK/WeexSDK.h' file not found

这是因为依赖库没有下载下来,我们可以查看Podfile文件,需要下载哪些库,检查cocoapods是否被下载,由于没有做过ios开发,需要对ios的环境稍微配置一下

1、安装cocoapods

sudo gem install -n /usr/local/bin cocoapods

gem安装如果慢的话,可以更改下载源,使用命令gem sources -l查看当前gem的下载源,默认源是https://rubygems.org/,我们先将这个下载源移除gem sources --remove https://rubygems.org/,跟换一个淘宝的源镜像地址gem sources -a https://ruby.taobao.org/

2、pod install

cd到ios项目的根目录,使用pod install来安装依赖库,如果是第一次使用的话,pod会去github下载Specs,如果没科学上网的话,下载会非常的缓慢,有时候,即使科学上网,下载到100%,最后也会报ssl错误,我的解决办法是,代理git方案,我的代理工具是socks,socks应用程序默认的端口是1080,大家可以自己查阅是多少,使用命令

#这条命令代理了git下载远程库的时候,全部走socks代理,即为全局
git config --global http.proxy socks5://127.0.0.1:1080#自动代理模式,国内的默认,github的走代理
git config --global http.https://github.com.proxy socks5://127.0.0.1:1080#移除代理
git config --global --unset http.https://github.com.proxy

下载速度非常快,pod install安装完成后,可以看到Pods文件夹下面下载的库,xcode打开项目,使用命令command+B命令重新编译运行,ok,可以运行

这篇关于weex在运行上遇到的坑的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1101882

相关文章

Python运行中频繁出现Restart提示的解决办法

《Python运行中频繁出现Restart提示的解决办法》在编程的世界里,遇到各种奇怪的问题是家常便饭,但是,当你的Python程序在运行过程中频繁出现“Restart”提示时,这可能不仅仅是令人头疼... 目录问题描述代码示例无限循环递归调用内存泄漏解决方案1. 检查代码逻辑无限循环递归调用内存泄漏2.

Java终止正在运行的线程的三种方法

《Java终止正在运行的线程的三种方法》停止一个线程意味着在任务处理完任务之前停掉正在做的操作,也就是放弃当前的操作,停止一个线程可以用Thread.stop()方法,但最好不要用它,本文给大家介绍了... 目录前言1. 停止不了的线程2. 判断线程是否停止状态3. 能停止的线程–异常法4. 在沉睡中停止5

Jackson库进行JSON 序列化时遇到了无限递归(Infinite Recursion)的问题及解决方案

《Jackson库进行JSON序列化时遇到了无限递归(InfiniteRecursion)的问题及解决方案》使用Jackson库进行JSON序列化时遇到了无限递归(InfiniteRecursi... 目录解决方案‌1. 使用 @jsonIgnore 忽略一个方向的引用2. 使用 @JsonManagedR

在VSCode中本地运行DeepSeek的流程步骤

《在VSCode中本地运行DeepSeek的流程步骤》本文详细介绍了如何在本地VSCode中安装和配置Ollama和CodeGPT,以使用DeepSeek进行AI编码辅助,无需依赖云服务,需要的朋友可... 目录步骤 1:在 VSCode 中安装 Ollama 和 CodeGPT安装Ollama下载Olla

解读docker运行时-itd参数是什么意思

《解读docker运行时-itd参数是什么意思》在Docker中,-itd参数组合用于在后台运行一个交互式容器,同时保持标准输入和分配伪终端,这种方式适合需要在后台运行容器并保持交互能力的场景... 目录docker运行时-itd参数是什么意思1. -i(或 --interactive)2. -t(或 --

pycharm远程连接服务器运行pytorch的过程详解

《pycharm远程连接服务器运行pytorch的过程详解》:本文主要介绍在Linux环境下使用Anaconda管理不同版本的Python环境,并通过PyCharm远程连接服务器来运行PyTorc... 目录linux部署pytorch背景介绍Anaconda安装Linux安装pytorch虚拟环境安装cu

在MySQL执行UPDATE语句时遇到的错误1175的解决方案

《在MySQL执行UPDATE语句时遇到的错误1175的解决方案》MySQL安全更新模式(SafeUpdateMode)限制了UPDATE和DELETE操作,要求使用WHERE子句时必须基于主键或索引... mysql 中遇到的 Error Code: 1175 是由于启用了 安全更新模式(Safe Upd

解决JavaWeb-file.isDirectory()遇到的坑问题

《解决JavaWeb-file.isDirectory()遇到的坑问题》JavaWeb开发中,使用`file.isDirectory()`判断路径是否为文件夹时,需要特别注意:该方法只能判断已存在的文... 目录Jahttp://www.chinasem.cnvaWeb-file.isDirectory()遇

通过prometheus监控Tomcat运行状态的操作流程

《通过prometheus监控Tomcat运行状态的操作流程》文章介绍了如何安装和配置Tomcat,并使用Prometheus和TomcatExporter来监控Tomcat的运行状态,文章详细讲解了... 目录Tomcat安装配置以及prometheus监控Tomcat一. 安装并配置tomcat1、安装

mysqld_multi在Linux服务器上运行多个MySQL实例

《mysqld_multi在Linux服务器上运行多个MySQL实例》在Linux系统上使用mysqld_multi来启动和管理多个MySQL实例是一种常见的做法,这种方式允许你在同一台机器上运行多个... 目录1. 安装mysql2. 配置文件示例配置文件3. 创建数据目录4. 启动和管理实例启动所有实例