代码之家  ›  专栏  ›  技术社区  ›  piotrek

在aspectJ编译时编织之后,类路径上仍然需要哪些类文件?

  •  0
  • piotrek  · 技术社区  · 7 年前

    假设我有一个由3个文件构建的应用程序:

    MyApp.java

    public class MyApp {...}
    

    MyAspect.aj (为应用程序添加了一些功能):

    public aspect MyAspect {
    
       before(): execution(* MyApp.*(..)) {
         AspectHelper helper = new AspectHelper()
         ...
       }
    }
    

    AspectHelper.java (仅由方面使用)

    class AspectHelper {...}
    

    编译时编织后,我将 MyApp.class , MyAspect.class , AspectHelper.class .当我运行应用程序时,我是否需要类路径上的所有3个文件,或者其中一些文件将构建在 MyApp.class

    1 回复  |  直到 7 年前
        1
  •  0
  •   Nándor Előd Fekete    7 年前

    你的编织课程( MyApp )将引用aspect类( MyAspect AspectHelper ). 您将需要所有文件。当然,aspectj运行时也是如此。您可以使用反编译工具或 javap .试用 javap -p -c -s MyApp.class