簡體   English   中英

龍目島搞砸了-IntelliJ IDEA

[英]Lombok messing up - IntelliJ IDEA

我將Lombok作為依賴項(Maven),並且已導入批注,但它未生成方法。 有什么建議么?

注釋有效:
工作注釋

方法未生成:
方法不生成

您需要安裝/激活lombok插件才能在IntelliJ中工作。 單獨的maven依賴項以及pom.xml中的插件配置僅在Maven構建中有效:

<dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
    <version>1.12.2</version>
</dependency>
...
<build>
  <plugins>
    <plugin>
      <groupId>org.projectlombok</groupId>
      <artifactId>lombok-maven-plugin</artifactId>
      <version>1.12.2.0</version>
      <executions>
        <execution>
          <phase>generate-sources</phase>
            <goals>
              <goal>delombok</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
  ...
  </plugins>
</build>

Lombok實際上已經為您生成了吸氣劑,但您的IDE並未為您顯示它。 也就是說,您的getKills()方法對javac可見,但對IntelliJ不可見。

為了進行以上驗證,您可以執行mvn compile並且您會看到代碼不會引發編譯錯誤。

如果您對getKills()以紅色字體顯示感到getKills() ,則只需為IntelliJ安裝Lombok插件 除了識別Lombok生成的代碼(並且不會以紅色字體顯示)之外,該插件還為您提供了諸如自動完成功能,在IDE中“ delombok”的功能等優勢。

不需要安裝lombok-maven-plugin

雖然可能實際上沒有生成方法(在這種情況下,您應該忽略此答案),但是根據我的經驗,當我在項目中使用Lombok時,IntelliJ 從未能夠在IDE中檢測到它們並始終強調getter / setter調用我用作錯誤的錯誤(即使不是錯誤)。

但是,當我編譯並運行代碼時,它可以正常工作,因為實際上已經生成了getter / setter。 嘗試運行您的代碼,並忽略intellij錯誤下划線。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM