Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/336.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java AspectJ加载时编织占用了太多时间_Java_Scala_Aspectj_Load Time Weaving - Fatal编程技术网

Java AspectJ加载时编织占用了太多时间

Java AspectJ加载时编织占用了太多时间,java,scala,aspectj,load-time-weaving,Java,Scala,Aspectj,Load Time Weaving,我已经为我的scala应用程序创建了一个可执行jar。我正在尝试使用AspectJ加载时编织。aspectj正在按预期工作,但是,在LTW之后启动jar文件需要花费大量时间 我的AOP.xml如下: <aspectj> <aspects> <aspect name="com.app.module.aspect.WorkflowInterceptor"/> </aspects> <weaver opti

我已经为我的
scala
应用程序创建了一个可执行jar。我正在尝试使用
AspectJ加载时编织
。aspectj正在按预期工作,但是,在LTW之后启动jar文件需要花费大量时间

我的AOP.xml如下:

<aspectj>
    <aspects>
        <aspect name="com.app.module.aspect.WorkflowInterceptor"/>
    </aspects>

    <weaver options="-verbose">
        <dump within="com.app.*"/>
        <!--<include within="com.app.common.features..*"/>-->
    </weaver>

</aspectj>
jar文件在15分钟后开始,有时甚至30分钟。我试图通过使用
include
来减少aspectj的编织,但没有工作。如果我不提供
dump
,则根本不会调用方面

有人能帮我解决这个问题吗

编辑:
我删除了
并使用了
。它正在工作,但仍然需要很多时间(5分钟)

-javaagent:aspectjweaver-1.8.4.jar使它能够在编译时编织。我想你织了两次。我从来没有使用过转储建议来让它工作。@sturcotte06它是如何编译时编织的?javaagent是在加载/运行jar时使用的,对吗?您使用的是spring吗?如果我没记错的话,您需要为加载时编织指定一个特殊的类加载器。java代理是在编译时重写代码的特殊编译器(编译时编织)。我的应用程序是scala。“此外,dump元素可以用于捕获编织类的磁盘字节码,用于在编织过程之前、运行时生成的以及编织过程之后进行诊断。”您不需要这样做。另外,我刚刚读到java代理中包含了类加载器。我想可以像你那样指定它。
java -javaagent:aspectjweaver-1.8.4.jar -jar myapp.jar