java apt怎么用_java – APT和AOP在同一个项目中,使用Maven

我显然是唯一能够回答我自己问题的人.

我已经使用Maven Antrun Plugin通过ant编译AspectJ.这是我的pom片段:

maven-antrun-plugin

1.4

org.aspectj

aspectjtools

${aspectj.version}

ajc-compile

process-classes

value="${project.basedir}/src/main/aspect" />

value="${project.build.outputDirectory}" />

value="${project.build.directory}/aspectj-classes" />

run

ajc-test-compile

process-test-classes

value="${project.basedir}/src/test/aspect;${project.basedir}/src/main/aspect" />

value="${project.build.testOutputDirectory}" />

value="${project.build.directory}/aspectj-test-classes" />

run

我首先编译java类(让APT做它的东西),使用编译的类作为aspectj的二进制输入,将aspectj编译到一个新文件夹中,并将生成的编织类移动到原始的编译目录,覆盖非aspectj类.这是我的ant XML文件(很好的部分是我可以将它用于编译和测试编译):

classname="org.aspectj.tools.ant.taskdefs.AjcTask"

name="iajc" classpathref="classpath" />

sourceroots="${aspectj.sourcepath}"

inpath="${aspectj.binarypath}"

destdir="${aspectj.targetpath}"

classpathref="classpath"

source="1.6"

target="1.6"

/>

在下一步中,我现在已经创建了一个Maven插件,可以在内部完成所有这些蚂蚁调用.虽然我不能在这里分享代码,但我将展示它如何简化POM配置:

com.myclient.maven.plugins

maven-ajc-plugin

1.0-SNAPSHOT

compile-ajc

compile

testcompile-ajc

test-compile

${project.basedir}/src/main/aspect

使用ANT / GMaven integration,可以很容易地组合Maven,Groovy和Ant的功能.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值