iajc and aspectpath



我对iajc编译器的aspectpath选项有点困惑。

我的项目使用AspectJ将度量代码编织到现有的swing应用程序中。

所有的应用程序源代码都是这样打包的:

com.xxx.yyy.myapp.*

我们已经把aspect放到了同一个项目中的一个包中:

com.xxx.yyy.aop.*

首先使用javac构建项目,输出到${classes.dir}

然后我们这样调用iacj:

<iajc inpath="${classes.dir}" 
                                destDir="${classes.dir}" 
                                fork="true" 
                                maxmem="${aspectj.maxmem}" 
                                verbose="true" 
                                showWeaveInfo="true" 
                                debug="true"
                                source="1.6"
                                target="1.6">
                                <classpath refid="ajclasspath"/>
                    </iajc>

<path id="ajclasspath">
                <path refid="classpath"/>
                <pathelement location="${scm.home}/ant_libs/aspectjrt.jar"/>
            </path>

话虽如此,我是否需要在iajc中指定一个aspectpath ?

根据与classpath类似的文档,aspectpath包含只读的二进制方面库,这些库被编织到源代码中,但不包括在输出中。在您的情况下,您在输出中包含您的方面,并且它们在${classes.dir}中具有正常类。所以当你不想分离你的方面时,你不需要指定aspectpath

相关内容

  • 没有找到相关文章

最新更新