我厌倦了添加手动日志来调试我编写的每个方法。
我开始了解jcabi的@Loggable注释,但在实现上并不成功,非常感谢您的帮助。
下面是我尝试过的代码。
import com.jcabi.aspects.Loggable;
import lombok.extern.slf4j.Slf4j;
@Slf4j
public class Jcabi {
@Loggable
private static String checkJcabi(String stringToPrint) {
log.info("Print Successfull");
return stringToPrint;
}
public static void main(String[] args) {
checkJcabi("Hello World!");
}
}IDE控制台打印以下内容:
[main] INFO com.amazon.optimus.cpamutil.utils.Jcabi - Print Successfull这是我在该方法中添加的log.info()的日志,并且没有该post中提到的类似如下所示的@Loggable注释的日志(如下所示
[INFO] com.example.Foo #power(2, 10): 1024 in 12μs
[INFO] com.example.Foo #power(3, 3): 27 in 4μs下面是我使用的依赖包:
JCabiAspects = 1.0;
AspectJ = 6.0;
Slf4j = 1.7;
Slf4j_Simple = 1.7;
如果你需要更多细节,请告诉我。谢谢。
发布于 2018-03-15 21:30:28
您需要对您的二进制文件进行编织,如下所述:http://aspects.jcabi.com/example-weaving.html
发布于 2021-05-06 10:45:14
你需要做二进制编织。在您链接的帖子中,它是这么说的,它还说您可以使用jcabi- maven -plugin来为您编织,因为您使用的是maven。
只需向您的类路径添加一些依赖项,并为方面编织配置jcabi- Maven -plugin (从Maven Central获得其最新版本)。
<project>
<dependencies>
<dependency>
<groupId>com.jcabi</groupId>
<artifactId>jcabi-aspects</artifactId>
</dependency>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjrt</artifactId>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>com.jcabi</groupId>
<artifactId>jcabi-maven-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>ajc</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>如果您正在使用gradle,则可以使用此gradle-aspectj-binary插件
https://stackoverflow.com/questions/48647825
复制相似问题