【问题标题】:Lombok not working with STS龙目岛不使用 STS
【发布时间】:2016-06-20 22:40:38
【问题描述】:

虽然我喜欢 lombok,但它有时在配置时会带来太多问题,特别是在 Linux 中。当我尝试安装它时,我收到以下错误:

我尝试手动设置,如建议here https://github.com/rzwitserloot/lombok/issues/95 但这也没有奏效。有什么建议吗?

【问题讨论】:

    标签: spring-tool-suite lombok


    【解决方案1】:
    • 我已在以下链接中更新了相同内容。

    Lombok not generating getter and setter STS

    【讨论】:

    • @Janet - 我正确地遵循了所有步骤,但它仍然不适合我。知道为什么吗?
    • 如果不行,请更换lombok版本,再试一次
    • 完成上述步骤后,确保重启 STS,然后检查 STS:“帮助 > 关于 Spring Tool Suit”,然后滚动到部分底部,您应该会看到类似:“Lombok v1.16.22” Envious Ferret" 已安装。projectlombok.org" 感谢 GoutamS
    • 该图像中的第 1 步是什么意思? “在 Maven 中包含 pom”?
    • 对我来说,我必须再执行一个步骤,将 Lombok jar 放在插件下并重新启动。成功了!!
    【解决方案2】:

    对于安装程序在安装时出现错误的人,可以按照以下步骤手动安装。

    1. 首先关闭 STS。
    2. ~/.m2 存储库复制lombok-x.xx.xx.jar。 (例如~\.m2\repository\org\projectlombok\lombok\1.16.14\lombok-1.16.14.jar
    3. 将复制的 jar 重命名为 lombok.jar 并将其粘贴到 STS 启动器 exe 旁边的 STS 主目录中(例如 D:\spring-tool-suite-3.9.0.RELEASE-e4.7.0-win32-x86_64\sts-bundle\sts-3.9.0.RELEASE\
    4. 打开STS.ini(文件名可能因STS版本而异),最后写-javaagent:lombok.jar行。
    5. 重启 STS
    6. 转到help>About Spring Tool Suit 并检查。您将看到类似“Lombok v1.16.14 "Candid Duck" is installed. https://projectlombok.org/”的消息
    7. 对于任何现有的项目错误,项目的 RCL,转到Maven>Update Project

    【讨论】:

    • 这个帮助了我! 7.对于任何现有项目错误,对项目进行 RCL,转到 Maven>Update Project。
    • 是的,第 4 步解决了我的问题,谢谢
    【解决方案3】:

    对于 Mac OSX 上的 STS,选择 .ini 文件,而不是 .exe 文件

    这是我 Macbook 上的路径。

    /Applications/SpringToolSuite4.app/Contents/Eclipse/SpringToolSuite4.ini

    它就像一个魅力。

    【讨论】:

      【解决方案4】:

      尽管成功安装 lombok 并重新启动 STS,我还是遇到了这个问题,所以:

      • 关闭 STS 并
      • 开始

      工作(而不是重新启动它)。看到这个:http://codeomitted.com/setup-lombok-with-stseclipse-based-ide/

      【讨论】:

      • 这对我也有用。感谢您分享详细信息。
      • 我花了 2 个小时进行一些更改并直接重新启动 sts,然后才看到此评论。像魅力一样工作。
      【解决方案5】:

      我在 Lombok 的代码中发现了一个错误。正如他们在此提交中为 STS 修复的那样:

      https://github.com/rzwitserloot/lombok/commit/c3a3c09f4fd00b83814c1949fa5282ac9c595fa3

      他们总是两次添加结束目录名称。因此,为了解决问题,我将安装文件夹重命名为与父文件夹相同的名称。

      现在在选择安装目录时,我将选择外部文件夹。

      新安装目录: /home/ansh/softwares/sts/sts

      龙目岛的新选择位置: /home/ansh/softwares/sts

      【讨论】:

        【解决方案6】:

        当我将-javaagent arg 推到可变参数列表的顶部并重新启动 STS 时,它对我有用。默认情况下,Lombok 在安装时会在 ini 文件的末尾添加此参数。 例如:

        -vmargs
        -javaagent:lombok.jar
        

        【讨论】:

        • 这对我有用。有几个对 lombok.jar 文件的引用,包括一个具有“-vmargs -javaagent:lombok.jar”的文件。我删除了其他引用并像上面显示的那样拆分了行,它起作用了。谢谢!
        • 我还在 sts.exe 旁边以及 plugins 文件夹中添加了 lombok.jar 文件。我不确定哪个是正确的位置。
        【解决方案7】:

        按照以下步骤操作:

        1. https://projectlombok.org/download下载lombok
        2. 双击lombok.jar并指定你的ide路径并点击安装。
        3. 重启你的ide。
        4. 清理您的项目。如果你使用的是eclipse或者sts,点击Project->clean..

        【讨论】:

          【解决方案8】:

          有些人安装 STS,而其他人则直接从文件夹中运行它们。此方法适用于 ubuntu 18.04 和 STS 4.5。希望其他 Linux 发行版也一样。

          1. 退出 STS。

          2. 从官方网站下载龙目岛。 https://projectlombok.org/download

          3. 现在运行 jar。如果你已经安装了 STS,它需要 sudoers 权限或者从文件夹中使用不需要使用 sudo。

            sudo java -jar lombok.jar

          4. 现在弹出错误提示,Lombok 找不到 STS IDE,并要求我们手动选择 STS runnable。

          5. 如果你在你的系统中安装了 STS 你应该会找到类似这样的路径,

            /opt/sts-4.5.1.RELEASE/SpringToolSuite4

            如果您从文件夹中使用,只需选择可运行文件的正确路径。

            /home/sysname/sts-4.5.1.RELEASE/SpringToolSuite4

          6. 现在在 jar 中运行“安装/更新”。它应该显示安装成功。

          7. 现在打开 sts 并清理/刷新您的项目。

          【讨论】:

            【解决方案9】:

            如果您使用的是 STS4 并且在 SpringToolSuite4.ini 文件中具有如下自定义 -vm 参数。


            -vm

            C:\Program Files\RedHat\java-1.8.0-openjdk-1.8.0.242-3\bin\javaw.exe


            然后您需要在 SpringToolSuite4.ini 文件中添加以下内容。


            -vmargs

            -javaagent:lombok.jar


            我已经做了以下部分:

            1. 您可以将 lombok-1.18.10 重命名为 lombok.jar。

            2. 将 lombok.jar 复制到 SpringToolSuite4.ini 文件的相同路径并安装。 java -jar lombok.jar.

            【讨论】:

              【解决方案10】:

              我通过双击 jar 文件并选择 spring 工具套件 IDE 来安装 lombok。即使在手动将 jar 添加到项目构建路径后重新启动 IDE 并重建项目后,大纲也没有显示 getter 和 setter。 然后将lombok jar文件放在Spring工具套件的插件文件夹中,然后重新启动。 getter 和 setter 开始出现在类大纲窗口中,如下所示:

              【讨论】:

              • 我刚刚登录来评价这个并评论说这解决了我的问题。我已经执行了 Lombok 网站(甚至是上面的 GoutamS)提到的 jar 步骤。但这是缺少的步骤(将 Lombok jar 放在插件下并重新启动)。谢谢老兄!
              • 不幸的是,这个解决方案没有解决我的问题。
              【解决方案11】:

              我有同样的 lombok 不能在 STS 上工作的问题。 对我来说根本原因是 我的 STS 安装目录中有空格

              -javaagent:E:\Installation Directory with spaces\sts-X.X\lombok.jar
              

              STS.ini中改成相对路径后

              -javaagent:lombok.jar
              

              lombok 开始工作了。

              【讨论】:

                【解决方案12】:

                从 STS 退出

                1. 将 lombok.jar 复制到 SpringToolSuite4.ini 文件附近并安装它(在我的情况下是 /Applications/SpringToolSuite4.app/Contents/Eclipse/):

                java -jar lombok.jar

                1. 转到终端并运行:

                  cd /Applications/SpringToolSuite4.app/Contents/Eclipse/

                2. 运行 java -jar lombok.jar

                  将显示一个 GUI 从 GUI 中选择指定位置.. 选择路径:SpringToolSuite4.app-Content-Eclipse-SpringToolSuite4.ini

                在ini文件的末尾插入了一个新行(在我的例子中是): -javaagent:/Applications/SpringToolSuite4.app/Contents/Eclipse/lombok.jar

                我猜你可以手动添加该行,但你必须在路径中的预期位置有 lombok.jar!

                清理项目。

                【讨论】:

                  【解决方案13】:

                  这个解决方案对我有用。

                  1. 为 Lombok 添加 maven 依赖项
                  2. 现在您应该可以在位置 C:\Users\abcd.m2\repository\org\projectlombok\lombok\1.18.20 找到 lombok-1.18.20.jar(可执行文件)
                  3. 转到上述位置并在命令提示符下执行以下命令。 java -jar lombok-1.18.20.jar
                  4. 上面的命令会弹出一个窗口。单击弹出窗口中的“确定”按钮,然后单击“指定位置”按钮。如下所示为您的 STS 安装提供位置,它应该单击“安装/更新”按钮

                  单击安装/更新后,您可以在 sts 安装文件夹中看到 lambok.jar。见下文。

                  1. 从 STS 安装文件夹中复制此 Lombok jar 并将其粘贴到 sts 插件文件夹中。

                  1. 开始你的sts
                  2. 现在您可以看到所有错误都会消失。

                  【讨论】:

                    【解决方案14】:

                    双击 lombok.jar(可从本网站下载,或从您的 maven 存储库下载;它是同一个 jar)。

                    这将启动 eclipse/STS 安装程序,它将找到 eclipse(以及上面列出的 eclipse 变体),并提供将 lombok 安装到这些 eclipse 安装中。同样的工具也可以卸载lombok。来源:https://projectlombok.org/setup/eclipse

                    【讨论】:

                      【解决方案15】:

                      如果您下载下面的 STS 版本并按照设置进行操作。 Lombok 与 STS 完美配合。

                      版本:4.7.0.RELEASE 内部版本号:202006181331

                      版权 (c) 2007 - 2020 Pivotal, Inc. 版权所有。访问https://spring.io/tools

                      本产品包括由 Eclipse 基金会https://www.eclipse.org

                      本产品包括由 阿帕奇软件基金会https://www.apache.org

                      已安装 Lombok v1.18.12 “Envious Ferret”。 https://projectlombok.org/

                      【讨论】:

                        【解决方案16】:

                        每个人都做的主要事情是将lombok安装为jar并通过双击jar来配置sts,但是忘记复制这个lombok jar 到sts/eclipse 安装文件夹。

                        【讨论】:

                          【解决方案17】:

                          在 Linux 上, 我将 lombook.jar 文件复制到 STS 文件夹。 然后,我在 STS.ini 文件中添加以下行

                          -vmargs
                          -Xbootclasspath/a:lombok.jar
                          -javaagent:lombok.jar
                          

                          但它仍然没有解决问题。使用 -clean 启动 STS 后,它确实有效。

                          转到包含 STS 文件的文件夹,然后在控制台上运行 ./STS -clean。

                          【讨论】:

                            【解决方案18】:

                            对于尝试了所有方法(包括从 lombok.jar 手动指向 STS 位置但仍无法正常工作)的任何人,这可能是由于有关 lombok.jar 的权限问题。请参阅 vancleff 的 this answer

                            【讨论】:

                              【解决方案19】:
                              1. 我已经从 .m2 目录中删除了所有 lombok 版本
                              2. 再次从项目运行 mvn install 并将 lombok jar 安装在 .m2 中
                              3. 复制到lombok jar到eclipse安装文件夹,运行java -jar lombok..jar并安装。
                              4. 在eclipse的java编译器中启用注解处理

                              它开始工作了。

                              我的环境是 - windows、java 8 和 eclipse 2020-06。

                              【讨论】:

                                【解决方案20】:
                                1. 转到 Maven 存储库并下载最新的 Lombok jar。
                                2. 从 cmd 运行 jar;就我而言,它是java -jar lombok-1.18.16.jar
                                3. 它会打开一个弹出窗口,要求您使用 STS JDK 配置 Lombok。浏览您的STS.exe 的位置并将其粘贴到弹出窗口中。
                                4. 导航到您的 STS 下载文件夹,打开 STS.ini 文件(此文件的类型显示为配置设置)。
                                5. 使用记事本打开文件,您应该会看到添加了一个新行,例如 -javaagent your STS folder location lombok-jar

                                重新启动你的 STS...你应该很好。

                                【讨论】:

                                  【解决方案21】:

                                  您可以手动提供 IDE 的位置。可能类似/opt/sts-4.7.2.RELEASE/

                                  第二,如果你的IDE路径有空格,那么IDE在启动时可能会出错,对于这个问题:手动修改eclipse.iniSpringToolSuite4.ini文件的行

                                  -javaagent:/home/<jar-path-here>/lombok.jar 
                                  

                                  【讨论】:

                                    【解决方案22】:
                                    1. 转到您的 Maven 本地存储库(例如, .m2\repository\org\projectlombok\lombok\1.18.20) 然后打开
                                      lombok jar 并提供 SpringToolSuite4.exe 的路径。
                                    2. 确认 lombok jar 与您的 SpringToolSuite4.exe 位于同一路径中 &
                                      "-javaagent:C:\Users\sss\Downloads\sts-4.10.0.RELEASE\lombok.jar"
                                      SpringToolSuite4.ini 中的此类路径。
                                    3. 然后通过关闭 sts 并手动重新打开来重新启动 sts。 sts 的重启功能对我不起作用。

                                    【讨论】:

                                      【解决方案23】:

                                      如果您使用的是 sts4 并想添加 lombok 功能,那么

                                      1-从https://projectlombok.org/download下载lombok.jar文件

                                      2-将其复制到包含SpringToolSuite4可执行文件的文件夹中。

                                      1. 打开 SpringToolSuie4.ini 文本文件并添加(如果不存在)。 -vmargs -javaagent:lombok.jar

                                      4 从 sts 菜单栏中的 project/clean 中清除所有现有项目。

                                      5 重新启动应用程序。

                                      【讨论】:

                                        【解决方案24】:

                                        试试这个很有帮助。如果您仍然阻止,请告诉我

                                        https://link.medium.com/THr4L44x0jb

                                        【讨论】:

                                        • 您的答案可以通过额外的支持信息得到改进。请edit 添加更多详细信息,例如引用或文档,以便其他人可以确认您的答案是正确的。你可以找到更多关于如何写好答案的信息in the help center
                                        【解决方案25】:

                                        我尝试了接受的解决方案中给出的步骤,但它对我不起作用。 我正在使用 STS 4.12 。我发现的问题是,最新的 sts 4.12 版本附带以下 ini 条目以及 lombok 安装程序所做的更改:

                                          -- {startup detail}
                                            -vmargs
                                            -Dosgi.requiredJavaVersion=11
                                          -- {vmargs details}
                                            -javaagent:C:\softwares_bkp\sts-4.12.0.RELEASE\lombok.jar
                                        

                                        将 -Dosgi.requiredJavaVersion 的条目更改为 1.8 对我有用。

                                        【讨论】:

                                          【解决方案26】:

                                          我使用的是带有 sts 4.12.1 的 ubantu 18.04,我通过运行 sudo java -jar lombok.jar 并选择 spring 工具套件 IDE 进行安装。即使在重新启动 IDE、重建并手动将 jar 添加到项目构建路径之后,lombok 也无法正常工作。然后将lombok jar文件放在Spring工具套件的插件文件夹中,然后重新启动。 成功了!!!

                                          【讨论】:

                                            【解决方案27】:

                                            如果你们仔细查看最终的 Lombok 安装弹出窗口,就会清楚地提到:

                                            我做了完全相同的事情,我的问题得到了解决。以下是我完整的 STS .ini:

                                            -startup
                                            plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar
                                            --launcher.library
                                            plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.1300.v20200819-0940
                                            -product
                                            org.springframework.boot.ide.branding.sts4
                                            --launcher.defaultAction
                                            openFile
                                            -vm
                                            plugins/org.eclipse.justj.openjdk.hotspot.jre.full.win32.x86_64_15.0.0.v20201014-1246/jre/bin
                                            -vmargs
                                            -javaagent:lombok.jar
                                            -Dosgi.requiredJavaVersion=11
                                            -Dosgi.dataAreaRequiresExplicitInit=true
                                            -Xms256m
                                            -Xmx2048m
                                            --add-modules=ALL-SYSTEM
                                            -javaagent:C:\E_Drive\Softwares\SpringToolSuite\sts-4.8.1.RELEASE\lombok.jar
                                            

                                            【讨论】:

                                              猜你喜欢
                                              • 1970-01-01
                                              • 2021-10-02
                                              • 2021-03-27
                                              • 2015-10-18
                                              • 1970-01-01
                                              • 1970-01-01
                                              • 2021-03-05
                                              • 1970-01-01
                                              • 2016-10-08
                                              相关资源
                                              最近更新 更多