aop Java为什么aspectj需要安装插件?
因此,我尝试在我的应用程序中使用AOP进行日志记录和一些错误处理。 大多数人建议使用aspectj,所以我的问题是为什么aspectj要求我安装eclipse插件才能使用它? aspectj不是简单地使用反射在运行时修改类吗
我们也在使用构建服务器,为了使用aspectj运行项目,我还需要在构建服务器上安装任何东西吗
你可以在下面搜索框中键入要查询的问题!
因此,我尝试在我的应用程序中使用AOP进行日志记录和一些错误处理。 大多数人建议使用aspectj,所以我的问题是为什么aspectj要求我安装eclipse插件才能使用它? aspectj不是简单地使用反射在运行时修改类吗
我们也在使用构建服务器,为了使用aspectj运行项目,我还需要在构建服务器上安装任何东西吗
# 1 楼答案
如果您有一个Maven项目,您只需要放置一些依赖项来处理Aspect。 我正在使用Netbeans并使用AspectJ,它工作得非常好。没有要安装的插件
有关某些信息,请参见:http://mojo.codehaus.org/aspectj-maven-plugin/
# 2 楼答案
不,编译/运行使用AOP编写的代码不需要任何插件
相反,您需要在编译/运行应用程序时添加类路径信息
例如,您可以查看here。它使用ant添加aspectj JAR来运行示例。而且它不需要插件就可以运行AspectJ代码
关于插件&;eclipse:这是关于让eclipse了解AspectJ代码,而不是混淆为无效的java代码
# 3 楼答案
除非您特别希望Eclipse具有方面感知能力,并在其内部构建过程中包含AspectJ功能,否则它不会。(IMO IDE对AOP的支持非常棒,并且使AOP更容易处理。光是排水沟标记就值得入场。)
AspectJ修改字节码;你不能通过纯粹的思考来做它所做的事情
生成服务器需要适当的库。如果您正在进行编译时编织,则需要将其添加到构建脚本中
# 4 楼答案
Aspect-J使用代理通过所谓的加载时编织来修改类。这是必需的,因为java代理只能与接口一起工作。代理用额外的(字节)代码扩充类
编辑:插件通常提供额外的功能来定义和查看切点和连接点