有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

aop Java为什么aspectj需要安装插件?

因此,我尝试在我的应用程序中使用AOP进行日志记录和一些错误处理。 大多数人建议使用aspectj,所以我的问题是为什么aspectj要求我安装eclipse插件才能使用它? aspectj不是简单地使用反射在运行时修改类吗

我们也在使用构建服务器,为了使用aspectj运行项目,我还需要在构建服务器上安装任何东西吗


共 (4) 个答案

  1. # 1 楼答案

    如果您有一个Maven项目,您只需要放置一些依赖项来处理Aspect。 我正在使用Netbeans并使用AspectJ,它工作得非常好。没有要安装的插件

    有关某些信息,请参见:http://mojo.codehaus.org/aspectj-maven-plugin/

  2. # 2 楼答案

    不,编译/运行使用AOP编写的代码不需要任何插件

    相反,您需要在编译/运行应用程序时添加类路径信息

    例如,您可以查看here。它使用ant添加aspectj JAR来运行示例。而且它不需要插件就可以运行AspectJ代码

    关于插件&;eclipse:这是关于让eclipse了解AspectJ代码,而不是混淆为无效的java代码

  3. # 3 楼答案

    除非您特别希望Eclipse具有方面感知能力,并在其内部构建过程中包含AspectJ功能,否则它不会。(IMO IDE对AOP的支持非常棒,并且使AOP更容易处理。光是排水沟标记就值得入场。)

    AspectJ修改字节码;你不能通过纯粹的思考来做它所做的事情

    生成服务器需要适当的库。如果您正在进行编译时编织,则需要将其添加到构建脚本中

  4. # 4 楼答案

    Aspect-J使用代理通过所谓的加载时编织来修改类。这是必需的,因为java代理只能与接口一起工作。代理用额外的(字节)代码扩充类

    编辑:插件通常提供额外的功能来定义和查看切点连接点