簡體   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