首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >不能将AutoValue解析为类型- Eclipse

不能将AutoValue解析为类型- Eclipse
EN

Stack Overflow用户
提问于 2019-03-15 05:54:00
回答 1查看 1.6K关注 0票数 3

试图在java类中使用AutoValue of package com.google.auto.value.AutoValue并获取错误"AutoValue无法解析为“”类型

我在pom.xml中添加了这个

代码语言:javascript
复制
<!-- https://mvnrepository.com/artifact/com.google.auto.value/auto-value -->
<dependency>
    <groupId>com.google.auto.value</groupId>
    <artifactId>auto-value</artifactId>
    <version>1.2</version>
    <scope>provided</scope>
</dependency>

Java程序:

代码语言:javascript
复制
package xxxx;

import ------
import com.google.auto.value.AutoValue;

@AutoValue
@DefaultCoder(SerializableCoder.class)
public abstract class ABC{
  /**
   * Manually create a test row.
   */
  public static ABC create(List<Object> fields) {
    return new AutoValue_ABC(fields); //error is here
  }

  public abstract List<Object> fields();
}

我尝试了这样的解决方案:打开项目属性,浏览到Java ->注释处理->工厂路径,单击“添加外部jar”,然后选择4个jar文件-自动服务-1.0-rc1.jar,番石榴-16.0.1.jar,jsr-305-2.0.3.jar,auto 1.0-rc1.jar

还尝试添加m2e-apt插件和Maven ->“注释处理”-> select“自动配置JDT APT.”

仍然获取错误"AutoValue无法解析为“”类型

有什么解决办法吗?提前谢谢。

EN

回答 1

Stack Overflow用户

发布于 2019-07-25 10:44:23

看来你有点过时了。最新版本的汽车价值是1.6.5.

您不仅必须导入自动值,还必须导入自动值注释。来自汽车价值官方文件:

代码语言:javascript
复制
<dependency>
  <groupId>com.google.auto.value</groupId>
  <artifactId>auto-value-annotations</artifactId>
  <version>1.6.2</version>
</dependency>
<dependency>
  <groupId>com.google.auto.value</groupId>
  <artifactId>auto-value</artifactId>
  <version>1.6.2</version>
  <scope>provided</scope>
</dependency>

你只需要这么多就行了。对于eclipse,您似乎已经看到了代码仿射。他们关于汽车价值的文章有点让人困惑。您只需要自动值和自动值注释。番石榴,自动服务,和jsr是不必要的使用与自动价值.

至少这对我有用。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55176365

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档