1. 程式人生 > 其它 >springboot專案編譯時,使用自定義註解類找不到符號

springboot專案編譯時,使用自定義註解類找不到符號

Java專案編譯時,使用自定義註解類找不到符號

Spring-boot專案

編輯器:idea

問題:編譯時找不到符號。專案中用到了自定義註解類。編輯器不提示語法有錯誤

/**
 * 限制每個ip對每個方法的訪問限制,加上時間限制
 */
@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
public @interface REQUEST_IP_LIMIT {

    /**
     * 時間型別,預設毫秒
     * @return
     */
    TimeUnit timeUnit() default TimeUnit.MILLISECONDS ;

    /**
     * 多長時間內限制,預設 60
     * @return
     */
    long t () default 60;

    /**
     * 單位時間內能訪問多少次,預設10次
     * @return
     */
    int count () default 10;
}

解決方法:找到程式碼的目錄,發現REQUEST_IP_LIMIT檔案不是java檔案的,而是aj檔案。初步認為是IDE生成的時候判斷是切面,修改了格式,然而編輯器能夠識別,Maven卻不能識別!導致編譯的時候找不到對應的class檔案。修改後綴名 .aj 為 .java 成功解決問題。