zoukankan      html  css  js  c++  java
  • LDT自己定义启动模拟器

    近期使用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:UsersAdministratorDocumentsGitHuborg.eclipse.koneki.ldt
    然后编译mvn clean package -P build-product
    大约5分钟时间,提示SUCCESS则成功,假设FAILURE的话,看下报错,假设是显示代码哪行的话就是代码错了要改。另一种情况是编译器
    的问题,如doc.user插件,这时仅仅要又一次编译,总会成功的。
     
    成功后会在org.eclipse.koneki.ldtproduct argetproducts文件夹下生成几个不同系统的IDE包,注意不要覆盖,要解压到新文件夹才起作用。

  • 相关阅读:
    AspNetCore打造一个“最安全”的api接口
    efcore分表分库原理解析
    对于经常接触的分页你确定你真的会吗
    Monitor的扩展支持string的超时锁
    Excel导出
    搭建私有Git服务器-GitLab
    C# 爬取网易Buff进行购买
    .Net Core 使用弹性和瞬态故障处理库Polly
    JS Table表格添加多选框
    JS 用户头像展示
  • 原文地址:https://www.cnblogs.com/mengfanrong/p/3831252.html
Copyright © 2011-2022 走看看