Appium修改源码后重新编译
按照官方的说明下载源码,安装依赖库,具体可从这来:
https://github.com/appium/appium/blob/master/docs/en/contributing-to-appium/appium-from-source.md
基本上只要三条命令就可以了:
git clone https://github.com/appium/appium.git
cd appium
npm install
gulp transpile
node .
这样就可以起起来appium server:

这时修改了appium/node_modules/appium-base-driver/lib/mjsonwp/mjsonwp.js 里的路由部分,加入一条console.log语句:

要想生效,需要在appium/node_modules/appium-base_driver目录下运行:
gulp transpile
会生成build目录,这才可以生效。
想到在最外层的appium目录下的gulpfile.js中定义一个可以重新编译的task:
// rebuild所有gulpfile.js
var exec = require('child_process').exec
gulp.task('rebuildAll', function () {
// 当前build
exec('gulp transpile', function (err, stdout, stderr) {
exec('gulp transpile', function (err, stdout, stderr) {
console.log(__dirname + 'build done')
})
})
fs.readdirSync(path.join(__dirname, 'node_modules')).forEach(function (dir) {
var modulePath = path.join(__dirname, 'node_modules', dir)
if(fs.existsSync(path.join(modulePath, 'gulpfile.js'))) {
exec('gulp transpile', {cwd: modulePath}, function (err, stdout, stderr) {
console.log(modulePath + ' build done')
})
}
})
})
对gulp不太熟,写的有点糙,可以只编译改动的部分,但这里一律重编译.
这样,在WebStorm,只要跑这个gulpfile.js里的rebuildAll就可以让修改的代码生效了.
Appium修改源码后重新编译的更多相关文章
- openvswitch2.11.0修改源码后重新编译(2)
一:前提 已经正常安装了SDN环境(mininet和openswitch2.11.0和Ryu) 使用前面教程安装环境SDN实验---使用git安装Mininet (一)测试ovs是否正常使用 1.ry ...
- openvswitch2.11.0修改源码后重新编译
一:推文 https://www.jianshu.com/p/923f49c290f5(可以删除运行当中的DataPath内核) https://github.com/ebiken/doc-netwo ...
- [delphi]修改indy源码后重新编译
http://blog.csdn.net/nerdy/article/details/8702568 虽然indy有一身的毛病,但是一般情况下使用起来还是多方便的. 今天在做一个使用到indy的程序的 ...
- 利用src.rpm包修改源码后重新制作rpm包
1. 下载 .src.rpm包.例:https://repos.fedorapeople.org/repos/openstack/EOL/openstack-grizzly/epel-6/openst ...
- 下载Dubbo源码后的编译安装启动
1:安装jdk,maven 配制环境变量: 2:安装zookeeper 配制zookeeper环境变量 3:把dubbo源码编译成war包 启动cmd黑窗口 ,进入 源码文件 ...
- Tomcat修改源码,重新编译
源码和编译的区别:源码不能直接运行,是人读的,而编译后的程序是计算机可以读的.所以它们是不同的语言.
- 修改Electron的libcc(libchromiumcontent)源码,重新编译electron, 设置event.isTrusted为true
VPN非常注意: 编译的过程需要使用VPN, 否者chromium的源代码无法下载, 后面会出现总总问题 Electron的编译环境, 推荐使用物理机: win10 64位 英文版, 为了避免后期出现 ...
- Hadoop 修改源码以及将修改后的源码应用到部署好的Hadoop中
我的Hadoop版本是hadoop-2.7.3, 我们可以去hadoop官网下载源码hadoop-2.7.3-src,以及编译好的工程文件hadoop-2.7.3, 后者可以直接部署. 前者hadoo ...
- Sentinel控制台1.8.3修改源码,修改配置后推送到Nacos
目录 1. 接着上一篇 2. 思路 3. 下载Sentinel源码 4. 看Gateway里面读取的配置信息 5. 修改Sentinel控制台源码 6. 熔断规则测试 7. 限流规则测试 8. 打包使 ...
随机推荐
- Windows上安装、配置MySQL的常见问题
一,MySQL的下载安装 MySQL的安装过程就不说了,基本上和一般软件的安装过程没什么两样,就是一路点next,设置的root用户的密码要牢记.具体教程可以参考:http://jingyan.bai ...
- BIND的安装配置
简介 bind是dns协议的一种实现,也就是说,bind仅仅是实现DNS协议的一种应用程序 bind运行后的进程名叫named,不叫bind bind bind的配置文件在:/etc/named.co ...
- 利用canvas对上传图片进行上传前压缩
利用谷歌调式工具发现,图片大小直接影响着首屏加载时间. 且考虑到后期服务端压力,图片压缩特别必要. 本文是前端利用canvas实现图片.参考文章:https://www.cnblogs.com/007 ...
- PHP 生成条形码
<?php class BarCode128 { const STARTA = 103; const STARTB = 104; const STARTC = 105; const STOP = ...
- Laravel中如何添加新字段,如何指定在某个字段后而不是添加在最后
解答:
- 第76天:jQuery中的宽高
Window对象和document对象的区别 1.window对象表示浏览器中打开的窗口 2.window对象可以省略,比如alert()也可以写成window.alert() Document对象是 ...
- 辣鸡蒟蒻Klaier的一些计划
需要熟练的东西:cdq分治,堆,树链剖分,tarjan及其它一些图论算法,网络流,kmp,字符串哈希,线段树主席树,树状数组,斜率优化dp 需要学的东西:lct,后缀数组,AC自动机,平衡树 球队收益 ...
- DNA Sequence POJ - 2778 (ac自动机 + 快速幂)
题意: 给出患病的DNA序列,问序列长度为n的,且不包含患病的DNA序列有多少种 解析: 以给出的患病DNA序列建trie树 患病结点要用flag标记 对于长度为n的序列 位置i有四种 情况A C ...
- ans_rproxy 说明
ans_rproxy 说明 网络IP资源分配 Windows2008R2: IP: 172.16.204.50/24 Gateway: 172.16.204.1 ...
- 【刷题】洛谷 P3676 小清新数据结构题
题目背景 本题时限2s,内存限制256M 题目描述 在很久很久以前,有一棵n个点的树,每个点有一个点权. 现在有q次操作,每次操作是修改一个点的点权或指定一个点,询问以这个点为根时每棵子树点权和的平方 ...