近期使用LUA开发手游,团队里大神自研了个框架,底层C++渲染,上层LUA处理逻辑。

LUA的IDE选择LDT,不爽的是它不能自己主动启动模拟器,看过COCOSIDE能自启动,于是我想改造下LDT让它支持自启动模拟器。

參考原型:http://wiki.eclipse.org/Koneki/LDT/Developer_Area/Building_LDT_from_source

注意地方:

1.安装git,在Git Shell下输入 git clone  git://git.eclipse.org/gitroot/koneki/org.eclipse.koneki.ldt.git

2.安装mvn编译环境http://maven.apache.org/download.html,特别注意要下载3.0.5版本号apache-maven-3.0.5-bin.zip

其它的版本号不行,在使用mvn clean package -P build-product命令时会下载一些依赖包,要三小时左右。

3.在1中检出的LDT源码,打开org.eclipse.koneki.ldt.debug.ui.internal.launchconfiguration.attach.LuaAttachMainTab,

改动UI,在doCreateControl方法里加入以下代码

// ======= SIMULATOR GROUP ==========
final Group grpSimulator = new Group(composite, SWT.NONE);
GridLayoutFactory.swtDefaults().numColumns(2).applyTo(grpSimulator);
GridDataFactory.fillDefaults().grab(true, false).applyTo(grpSimulator);
grpSimulator.setText(Messages.LuaAttachMainTab_simulator_group); Label lblWin32 = new Label(grpSimulator, SWT.NONE);
lblWin32.setText(Messages.LuaAttachMainTab_win32_label);
GridDataFactory.swtDefaults().applyTo(lblWin32); txtWin32 = new Text(grpSimulator, SWT.BORDER);
GridDataFactory.fillDefaults().grab(true, false).applyTo(txtWin32);
txtWin32.addModifyListener(textModifyListener);

在doInitializeForm方法里初始化文本框路径内容,doPerformApply方法保存属性。
运行bat的入口在org.eclipse.koneki.ldt.debug.core.internal.attach.LuaAttachDebuggingEngineRunner里,
createDebugTarget方法头部加上
try {
ILaunchConfiguration configuration = launch.getLaunchConfiguration();
String path = configuration.getAttribute("simulator_path", "");
// Runtime.getRuntime().exec("cmd.exe /c start D:\\trunk_data\\tools\\Simulator\\Simulator_start.bat");
if(path != "") {
Runtime.getRuntime().exec("cmd.exe /c start " + path);
}
} catch (IOException e) {
}
 
4.做完这些后就是编译代码了,先cd切到代码所在的文件夹,如 cd C:\Users\Administrator\Documents\GitHub\org.eclipse.koneki.ldt
然后编译mvn clean package -P build-product
大约5分钟时间,提示SUCCESS则成功,假设FAILURE的话,看下报错,假设是显示代码哪行的话就是代码错了要改。另一种情况是编译器
的问题,如doc.user插件,这时仅仅要又一次编译,总会成功的。
 
成功后会在org.eclipse.koneki.ldt\product\target\products文件夹下生成几个不同系统的IDE包,注意不要覆盖,要解压到新文件夹才起作用。

LDT自己定义启动模拟器的更多相关文章

  1. unable to boot the simulator,无法启动模拟器已解决

    突然模拟器报错:unable to boot the simulator(无法启动模拟器) 试了好几种解决办法,删除所有的模拟器重启以后再添加,删除钥匙串登陆中的证书,重新安装Xcode都不行 最后通 ...

  2. Android Studio 无法启动模拟器的一种可能是你装的是Ghost版的系统

    我遇到的问题是,打开模拟器,进度条走到最后,突然出现了emulator error,然后模拟器就无法启动(不好意思当时没有截图).我是在Ghost版 win7系统下运行Android Studio 的 ...

  3. AS启动模拟器报'mksdcard.exe' is missing from the SDK tools folder.异常、启动模拟器失败

    这个问题是因为SDK下的tools文件夹中找不到mksdcard.exe程序所以无法启动模拟器,下载android-sdk_r20-windows.zip压缩包解压缩后将tools文件覆盖到SDK的t ...

  4. Android 启动模拟器是出现“Failed to allocate memory: 8”错误提示的原因及解决办法

    某天,Android 启动模拟器是出现“Failed to allocate memory: 8”错误,模拟器无法启动,如下图: 原因:设置了不正确AVD显示屏模式,4.0版默认的模式为WVGA800 ...

  5. Android studio 启动模拟器出现 VT-x is disabled in BIOS 以及 /dev/kvm is not found

    Android studio 启动模拟器出现 VT-x is disabled in BIOS 以及 /dev/kvm is not found 网上大部分文章都是说在bios开启vt-x支持等.这里 ...

  6. react-native 设置启动模拟器

    react-native 设置启动模拟器 查看iOS可选设备: xcrun simctl list devices iPhone7 Plus启动(下次启动会默认使用最后一次选择设备,直接启动npx r ...

  7. android启动模拟器命令

    参考资料:http://blog.csdn.net/sanjinxiong/article/details/6758222 启动模拟器 首先通过android list avd 查看建好的虚拟设备: ...

  8. 十六:SpringBoot-自定义启动页,项目打包和指定运行环境

    SpringBoot-自定义启动页,项目打包和指定运行环境 1.自定义启动页 2.打包配置 2.1 打包pom配置 2.2 多环境配置 3.环境测试接口 4.打包执行 4.1 指定模块打包 4.2 运 ...

  9. Android命令行启动模拟器

    我们在平时的开发中会经常需要使用模拟器进行调试,这个时候我们就要先打开Android Studio来启动模拟器,然后再运行App.这个流程中启动Android Studio需要花费一些时间,而模拟器的 ...

随机推荐

  1. GO学习资源站

    GO语言学习资源网站 http://golangtc.com https://gobyexample.com http://golang-examples.tumblr.com

  2. 反调试技术(Delphi版)

    1.程序窗口句柄检测原理:用FindWindow函数查找具有相同窗口类名和标题的窗口,如果找到就说明有OD在运行//****************************************** ...

  3. C# 迪杰斯特拉(Dijkstra)算法

    Dijkstra(迪杰斯特拉)算法是典型的最短路径路由算法,用于计算一个节点到其他所有节点的最短路径.主要特点是以起始点为中心向外层层扩展,直到扩展到终点为止. 其基本思想是,设置顶点集合S并不断地作 ...

  4. ASP.NET MVC4(Razor)从客户端中检测到有潜在危险的 Request.Form 值

    SP.NET MVC4(Razor)从客户端中检测到有潜在危险的 Request.Form 值 “/”应用程序中的服务器错误. 从客户端(Content=" sdfdddd ..." ...

  5. Eclipse setting Java code style and codetemplate

    1.open the eclipse tool window First click the Window menu,then check the children's menu which name ...

  6. PDF转word文档

    本文未对扫描版的PDF实验,但是可编辑PDF版本可以转换为word而且转换后的word是可编辑的. 1.从http://xiazai.zol.com.cn/detail/33/326858.shtml ...

  7. eclipse sysout快捷输入启用

    Window-Preference-java-editor-content assist-advanced 一定要勾选Template Propasals. 关于Template Propasals: ...

  8. (转)c#对象内存模型

    对象内存模型 C#的对象内存模型写这篇博客的主要目的是为了加深自己的理解,如有不对的地方,请各位见谅. C#的对象内存模型: 一.栈内存和堆内存1.栈内存 由编译器自动分配和释放,主要用来保存一些局部 ...

  9. UVA 1614 - Hell on the Markets

    题意: 输入n个数,第i个数ai满足1≤ai≤i.对每个数添加符号,使和值为0. 分析: 排序后从最大的元素(假设为k)开始,凑出sum/2即可.用去掉了k的集合,一定可以凑出sum/2 - a[k] ...

  10. dom 删除和清除

    <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <m ...