当前位置:  开发笔记 > 编程语言 > 正文

JCabi方面@RetryOnFailure如何抛出异常

如何解决《JCabi方面@RetryOnFailure如何抛出异常》经验,为你挑选了1个好方法。

我想通过使用JCabi手动调用方法重试.面向方面的编程应该让这很容易,但我无法弄清楚.

import com.jcabi.aspects.RetryOnFailure;

public class Example
{

    public int j;

    @RetryOnFailure(attempts = 4, delay = 100, verbose = true)
    public void retryFun() throws Exception
    {
        j++;
        if(j<3)
            throw new Exception();
        else
            return;
    }

    public static void main(String[] args) throws Exception
    {
        Example example = new Example();
        System.out.println(example.j);
        example.retryFun();
        System.out.println(example.j);
    }
}

jcabi提供的唯一示例是下面的示例,它不显示如何抛出异常以强制重试调用:

使用@RetryOnFailure注释注释您的方法,如果方法中有异常,它的执行将重复几次:

public class Resource {
  @RetryOnFailure(attempts = 2, delay = 10, verbose = false)
  public String load(URL url) {
    return url.openConnection().getContent();
  }
}

在发生异常时,该方法将重试两次,尝试之间延迟10毫秒.

Turbut Alin.. 7

对于那些仍在寻找答案的人来说,叶戈尔的答案现在已经过时了.0.8他发布的jcabi-maven-plugin版本不适合我.

经过几个小时的挖掘后,我发现这表明我们应该使用最后一个版本截至2014年7月0.9.2.

这是我为什么在运行mvn jcabi时的答案:ajc我从链接中得到错误,而且编织也无法正常工作.



1> Turbut Alin..:

对于那些仍在寻找答案的人来说,叶戈尔的答案现在已经过时了.0.8他发布的jcabi-maven-plugin版本不适合我.

经过几个小时的挖掘后,我发现这表明我们应该使用最后一个版本截至2014年7月0.9.2.

这是我为什么在运行mvn jcabi时的答案:ajc我从链接中得到错误,而且编织也无法正常工作.

推荐阅读
惬听风吟jyy_802
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有