dawn使用的是kilim协程,在编码结束后需要进行代码织入。试想,如果每次写完程序,运行代码之前都手工运行一次织入程序,是多么蛋疼的一件事情。更糟糕的是,如果你没掌握织入的技巧,可能就失去了在eclipse调试java代码的机会,开发效率会大大降低。所以,我们可以编写一段ant脚本,让eclipse帮我们自动完成织入。
我们就拿dawn这个项目做为实例,只要是java工程,基本都是类似的配置。如果你不知道怎么拿到dawn源码可以点击这里:https://github.com/zhmt/dawn/ 开工:
1.编写ant脚本weaver.xml
这是个ant脚本,dawn里已经自带这个脚本,我们看一下内容:
<?xml version="1.0" encoding="UTF-8"?> <project name="weaver" default="weaving" basedir="."> <property name="bindir" value="./bin" /> <property name="libdir" value="./libs" /> <path id="clspatth"> <pathelement location="${bindir}" /> <fileset dir="${libdir}"> <include name="**/*.jar" /> </fileset> <pathelement path="${java.class.path}" /> </path> <target name="weaving"> <!-- <sleep seconds="2" /> --> <java classname="kilim.tools.Weaver" fork="yes"> <classpath refid="clspatth" /> <arg value="-d" /> <arg value="${bindir}" /> <arg line="${bindir}" /> </java> </target> </project>
2.右键点击dawn工程,选择属性(Properties),点击Builders选项卡:
3.点击new,创建一个ant builder,设置选择我们刚才看的weaver.xm,并设置 Base directory,
4.切换到Refresh选项卡,如下设置:
5.切换到Targets选项卡,如下设置:
6.点击OK,设置完毕,此时,我们会在Console看到输出,类似下面这样:
7.再把工程编译级别调到1.7,大工告成:
8.我们来验证一下:
运行examples下面的zhmt.dawn.TestFiberSignal,如果不抛出异常,就说明配置成功,我们已经踏入异步编程的大门,准备以更简单的方式编写全异步的java代码吧!
Create mainLoop for Thread[KilimWorker-1,5,main]. 2(running=true,pr=null) waiting 3(running=true,pr=null) waiting signal 1 2(running=true,pr=null) waken signal 2 3(running=true,pr=null) waken
版权声明:本文为博主原创文章,未经博主允许不得转载。
原文地址:http://blog.csdn.net/zhmt/article/details/46658599