我可以 enable/disable 来自外部应用程序的方面吗?

Can I enable/disable aspects from an external application?

假设我有两个应用程序,一个具有基于面向方面编程的功能,例如身份验证、授权、日志记录、异常处理等,另一个连接到前一个应用程序并具有 enable/disable 方面。有什么办法可以做到这一点? (而 AOP 应用程序是 运行)

您可以编写程序,以便在某些(全局静态)属性 为假时禁用日志记录。当然,这会有效地禁用日志记录。 (是的,您可以在一个或多个方面编写此行为)

然而,AOP 应用程序是一个编译程序,方面只是编译代码。没有 "now run the program as if the aspect wern't compiled in"。即使您重新编译代码,也不能保证一切正常(日志记录除外)。例如,某些方面可以修改您的程序所依赖的输入。如果没有这些方面,您的程序可能会崩溃。