繁体   English   中英

有依赖项时Javac找不到符号错误

[英]Javac cannot find symbol error when there is a dependency

我收到以下错误-很抱歉,如果这是很基本的话,那么我对Java的经验还不是很丰富。

javac -cp "/Users/myname/Desktop/Projects/Project/build_dir/jarname.jar" filename.java

filename.java:24: error: cannot find symbol
@JsonDeserialize(builder = Builder.class)
                           ^
  symbol: class Builder

好的,到目前为止很好。

因此,我研究了filename.java的代码,并在第24行看到了这一点:

@JsonDeserialize(builder = Builder.class)

因此,对于构建器类,我有一个反序列化注释(我认为)。

但是,在同一文件filename.java中,有一个构建器类:

   @JsonPOJOBuilder
    public static class Builder {

那么这是怎么回事? 仅仅是它在尝试编译并且也不知道是否也在寻找Builder类吗? 如何让Javac“知道”还有一个构建器类?

同样,如果这是一个基本问题,对不起,但是我在互联网上找不到太多有关此问题的信息。

编辑:由于存在有关应用程序如何工作的一些问题,我在下面包括了更多代码:

@JsonInclude(value = JsonInclude.Include.NON_NULL)
@JsonDeserialize(builder = Builder.class)
public class DetailClass {
private DetailClass(Builder builder) {
...
}
...
@JsonPOJOBuilder
    public static class Builder {
...
}
}

据我所知,Builder类是DetailClass的方法。

看起来Builder是一个内部类。 要指向内部类,您应该在前面添加父类名称:

@JsonDeserialize(builder = Builder.class)-> @JsonDeserialize(builder = DetailClass.Builder.class)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM