当前位置: 首页 > 知识库问答 >
问题:

找不到改装批注。(参数#1)

丰岳
2023-03-14

我想从带有reverfit的URL中获取RSS代码,如果我在get注释中静态输入URL,一切正常,但使用动态URL时,我会得到一个错误。

我的接口服务:

public interface AllNewsService {
@GET("/fa/rss/{url}")
void getRss( @Path("url") String nGroup ,  Callback<AllNewsRss> callback);}

并调用getRss方法:

DataGetter dg = new DataGetter();
    dg.get().getRss("allnews" ,new Callback<AllNewsRss>() {
        @Override
        public void success(AllNewsRss allNewsRss, Response response) {
            Log.d(TAG,"success");
        }

        @Override
        public void failure(RetrofitError error) {
            Log.d("*********",error.toString());
        }

我得到以下错误:

retrofit.RetrofitError: AllNewsService.getRss: No Retrofit annotation found. (parameter #1)

注意:我将下面一行添加到proguard.cfg中,但它不起作用

-keep class retrofit.** { *; }

共有2个答案

陈实
2023-03-14

我的问题是,我有@post批注,但忘记了参数的@body批注。

商冠玉
2023-03-14

Destil回答的补充

确保您传递给改装接口方法(即回调、标头、正文)参数只属于改装包。例如,不是自己想要的自定义回调。

 类似资料:
  • 我正在为Java类编写测试用例,这是我第一次使用PowerMock框架。我添加到pom中的依赖项。下面显示了xml以及完整的错误消息。当我尝试在测试类中使用注释时,它没有导入任何东西。我检查了JAR内部,没有找到与

  • 我有以下查询: 执行查询时,我得到以下异常: java.lang.非法参数异常: 组织.Hibernate.查询参数异常: 找不到命名参数 [startDate] 您能告诉我的查询有什么问题吗?

  • 问题内容: 我正在尝试针对自己的AngularJS代码运行本教程。我无法通过第一次考试。任何尝试从我的页面中提取任何信息都会出现此错误: 有没有人提供量角器教程,向您展示了如何定位自己的代码,而不是别人的代码? 先感谢您 问题答案: 答案是您必须在HTML页面的顶部或顶部才能使用量角器。 例如,将应用程序作为的一部分将不起作用

  • 我将versionCode从1.0更改为1.1,如下所示: 原因:org.gradle.internal.metaobject.AbstractDynamicObject$CustomMessageMissingMethodException:找不到defaultConfig_Enterprise{name=main,dimension=null,minsdkversion=defaultapiv

  • 我的项目设置是Spring MVC,Hibernate 3.2.x,在 MySQL 数据库上 收到以下错误: org.hibernate.QueryParameterException:无法找到命名参数电子邮件 方法#1: 方法#2: 错误: java.lang.IllegalArgumentException:参数email不作为命名参数存在于[fromcom.cmgr.beans.UserAc

  • 问题内容: 我正在使用OAuth,每次发出请求时,都需要将OAuth令牌放在标头中。我看到了注释,但是有没有一种方法可以对其进行参数化,以便我可以在运行时传递? 这是概念 您可以在运行时传递它们吗? 问题答案: 除了使用@Header参数之外,我还希望使用RequestInterceptor来更新您的所有请求,而无需更改您的界面。使用类似: p / s:如果使用Retrofit2,则应使用而不是