【问题标题】:Ctrl+click doesn't work in Eclipse JunoCtrl+单击在 Eclipse Juno 中不起作用
【发布时间】:2023-04-05 12:21:01
【问题描述】:

对于我在 Juno 之前使用的每个版本的 Eclipse,ctrl+click 会找到变量/类/方法的声明。在处理大型代码库时,这是一个非常有用的功能。如何让朱诺这样做?

【问题讨论】:

  • 我正在使用 Juno,它仍然对我有用。也许你有一个关键冲突?
  • 如果您按 F3,是否会找到当前所选变量/类的声明?另外,您使用的是哪个操作系统(Linus / OSX / Windows 7?)?您使用的是哪种 Eclipse(J2EE、Classic 等)?你能指出我从这里下载的确切内容吗:eclipse.org/downloads/index-developer.php?我会尝试复制你的环境,看看会发生什么。
  • 您使用什么语言工作?和以前的工作区一样吗?
  • 我在基于 eclipse Kepler SR2 (4.3.2) 的 SpringToolSuite 3.6.3 中遇到了同样的问题。超链接设置(请参阅下面的答案)已正确设置。 F3 键也有效。但是 Ctrl-Click 不是。导航到类型等工作,但不适用于成员的声明。

标签: java eclipse


【解决方案1】:

我可以确认 Ctrl + click 可以正常工作:

Eclipse Java EE IDE for Web Developers.
Version: Juno Release
Build id: 20120606-2254
Operating System : Windows 7, 64 Bit

您对以下偏好有什么看法?

On Window -> Preferences -> General -> Editors -> Text Editors -> Hyperlinking -> Open Declaration

这是我在 Juno 中的新工作空间:

更新

我最近没有遇到过这种情况,但我隐约记得在以前的 Eclipse 版本(Galileo 和更早版本)中遇到过这个问题。

只有当我们确定这是 Eclipse 工作区的问题时,以下所有操作才值得去做。检查这一点的一种快速方法是使用新工作区重新启动 eclipse(通过转到文件 -> 切换工作区 -> 其他...并选择最好为空的文件夹的路径来执行此操作 不同于当前工作区文件夹)。

如果在新的工作区中一切正常,那么我的修复是以下之一,以递增顺序极端性:

  1. 重新启动 Eclipse(是的,有时就是这样)
  2. 使用-clean 参数重新启动eclipse 以清理工作区(请参阅this)。如果您使用的是旧版本 eclipse 中的工作区,这可能特别值得做。
  3. 当上述失败,我只需要使用我现有的工作空间时,我备份了我的工作空间文件夹并在删除 WORKSPACE_FOLDER/.metadata/.plugins/org.eclipse.jdt.core 后重新启动了 Eclipse

【讨论】:

  • -clean 选项对我有用。我还注意到我已经自动设置了构建,取消设置,清理项目,然后重建。此外,我将eclipse与项目一起从windows复制到ubuntu,项目的jre没有正确绑定。无论如何尝试所有 - 祝你好运
【解决方案2】:

对我来说,简单地关闭已编辑的源文件并重新打开它会有所帮助。 如果这不起作用,那么您可以尝试重新启动整个 IDE。

【讨论】:

  • 确认版本:Juno Service Release 2 Build id:20130225-0426。打开了多个编辑器窗口。 Ctrl-click 仅对某些文件有效。关闭并重新打开时,导航再次起作用。
  • 我使用 ADT 至极使用 eclipse,这一直发生在我身上。我总是通过关闭 IDE 来解决它,但你的答案是一个更好的解决方案。谢谢!
【解决方案3】:

对于我的情况,我通过转到项目属性,选择“Java Build Path”,然后删除不再存在的源文件夹来解决这个问题。

【讨论】:

  • 对于我的问题,它与构建路径相关,但通过关闭我猜想导致问题的我引用的项目之一来解决。通常,当这种情况发生时,如果依赖引用的打开项目有问题(如果项目已关闭,则由常春藤 jar 代替项目),IDE 将抱怨项目错误,但在这种情况下没有。一旦我关闭了项目并解决了它,它就被修复了。
【解决方案4】:

这个bug真的很烦人..

唯一对我有用的是从工作区中删除项目, 然后删除 .project 和 .classpath 文件,然后将其重新导入工作区。

希望它能帮助其他人。

【讨论】:

    【解决方案5】:

    我在 Eclipse 中遇到了与 PDT 相同的问题,我通过删除包含构建路径并再次添加它们来修复它。

    【讨论】:

    • 这对我来说也适用于 Eclipse Kepler、PDT、Ubuntu。我多次更改所有权,Eclipse 无法写入项目文件夹。删除 .buildpath 和 .settings 文件夹允许项目重建。虽然我不确定是否会更容易执行 Project > Clean。但不确定它是否会产生相同的效果。
    【解决方案6】:

    我的解决方案是配置构建路径以包含项目本身。

    1. 右键单击打开的项目。
    2. 突出显示构建路径
    3. 点击配置构建路径...
    4. 点击来源
    5. 单击添加文件夹...按钮。
    6. 在您的项目旁边打勾。
    7. 点击确定。

    如有必要,单击项目菜单并选择“清理...”选项进行重建。

    【讨论】:

      【解决方案7】:

      我发现通过项目的 Java Build Path 设置解决问题解决了这个问题。

      右击项目,选择属性,选择Java Build Path。

      (注意:我在 Windows 7 上使用 Eclipse Kepler Service Release 2)

      【讨论】:

        【解决方案8】:

        如果您正在处理一个大型项目并且正在使用存储库,您可能只是通过错误的项目打开了文件,我只打开了两个文件实例,其中一个是我无法打开的' t 做 Ctrl + 点击,而在另一个文件上我可以 Ctrl + 点击它成功。

        【讨论】:

          【解决方案9】:

          我在 Eclipse 中遇到了同样的问题。我验证了首选项和构建路径,也没有错误。尝试关闭和打开日食,但没有任何效果。即使我无法运行调试配置。我创建了一个新工作区, Ctrl+click / +click (Mac os) 工作正常。

          希望这可以帮助某人。

          【讨论】:

            【解决方案10】:

            我遇到了同样的问题,并通过以下方式解决了它。 我的问题来了,因为 我从 Git 导入了一个没有项目文件的项目。所以 Eclipse 没有将该项目识别为 java 项目。 Ctrl+click 不起作用,所以出现了 F3 问题。

            解决方案:(不是直接的。但解决了我的问题)

            • import -> projects from git -> from URI -> 选择新项目 向导
            • 因此将创建一个带有 src 文件夹的空项目。

            • 然后手动将所有src文件复制到文件夹中。

            【讨论】:

              【解决方案11】:

              有时,如果文件太大,则出于可伸缩性目的,Eclipse 会禁用导航。对我来说,它发生在带有 C++ 的 Eclipse 中

              它可以通过 Window->Preferences->C/C++/Editor/Scalability 启用,然后在“Scalability mode settings”下取消选中所有内容。

              【讨论】:

                【解决方案12】:

                我多次遇到这个问题。如 Ashutosh Jindal 所述,如果超链接已启用,但 ctrl+click 仍然不起作用,那么您需要:

                1. 导航到 Java -> 编辑器 -> 在首选项中标记出现次数
                2. 如果“标记当前文件中选定元素的出现次数”已被选中,请取消选中。
                3. 现在,检查上述选项,然后检查其下的所有项目。点击应用。

                这应该会启用 ctrl+click 功能。

                【讨论】:

                  【解决方案13】:

                  我在 eclipse 3.7.2 中创建工作区/项目时遇到了这个问题。然后我使用开普勒(4.3)打开它。 因此,只需通过您创建的 Eclipse 版本(在我的情况下为 3.7.2)打开项目即可解决问题。 希望对您有所帮助。

                  【讨论】:

                    【解决方案14】:

                    我有同样的问题;我试图改变偏好,清洁工作空间等,但没有任何效果。 解决方案: 最后我发现类路径配置有错误;解决这个问题后一切都变得正常了。

                    【讨论】:

                      【解决方案15】:

                      在我的系统上,Ctrl+click 会弹出右键菜单,而不是打开声明。但是,如果您按住 Ctrl 并将鼠标指针悬停在变量/类/方法名称上,则会出现一个顶部带有“打开声明”的小方框菜单。您可以将指针向下移动并单击该项目以获得所需的效果。

                      我在 OS X 上通过 VMWare 运行 Ubuntu 14.04。

                      【讨论】:

                        【解决方案16】:

                        我在我的 Ubuntu VM 中的 Eclipse Luna 中遇到了同样的问题,但我只是尝试 Ctrl+单击一个方法并且它有效(即使我的鼠标光标没有更改为一个指针)。

                        【讨论】:

                          【解决方案17】:

                          您需要使用 CTRL+B 重建工作区。 我有一个问题,我可以去函数声明,但对于一些我不会。 重建后,我可以做所有事情。 我希望这会有所帮助。

                          【讨论】:

                            【解决方案18】:

                            请同时检查您的 .classpath 文件。如果类路径不正确,有时 Eclipse 在使用“ctrl+click”到类或方法时不会重定向。我在 Eclipse Mars 中遇到过同样的问题,但是当我在工作位置获得正确的 .classpath 文件时,它得到了解决。

                            【讨论】:

                              【解决方案19】:

                              如果项目是 Maven 项目,请确保您打开的 java 类位于 src/main/java 中。

                              【讨论】:

                                【解决方案20】:

                                我在处理基于 GIT 的项目时遇到了完全相同的问题。我能够通过更改在工作区中导入项目的方式来解决问题。

                                错误的方式:从 GIT 角度将项目导入工作区,例如右键单击 GIT URL 并选择无法识别项目方面的选项导入。

                                正确的方法(解决了我的问题):在 GIT 透视图中克隆项目,更改为 JEE Perspective ,然后从文件导入 > 导入 > 现有 Maven 项目。

                                【讨论】:

                                  【解决方案21】:

                                  前往

                                  窗口 -> 首选项 -> 常规 -> 编辑器 -> 文本编辑器 -> 超链接

                                  并确保

                                  启用按需超链接样式导航

                                  已检查。

                                  【讨论】:

                                    【解决方案22】:

                                    我遇到了类似的问题,同时我发现项目属性中的 java 构建路径丢失了。 从存储库中提取的项目没有 .project 文件,eclipse 创建了一个默认的 .project 文件,我从其他工作项目中复制了 .project.xml 的内容并删除了 unsed 导入,之后一切正常

                                    <projectDescription>
                                    <name>XYZ</name>
                                    <comment></comment>
                                    <projects>
                                    </projects>
                                    <buildSpec>
                                        <buildCommand>
                                            <name>org.eclipse.wst.jsdt.core.javascriptValidator</name>
                                            <arguments>
                                            </arguments>
                                        </buildCommand>
                                        <buildCommand>
                                            <name>org.eclipse.jdt.core.javabuilder</name>
                                        </buildCommand>
                                        <buildCommand>
                                            <name>org.eclipse.wst.common.project.facet.core.builder</name>
                                        </buildCommand>
                                        <buildCommand>
                                            <name>org.eclipse.wst.validation.validationbuilder</name>
                                        </buildCommand>
                                    </buildSpec>
                                    <natures>
                                        <nature>org.eclipse.jem.workbench.JavaEMFNature</nature>
                                        <nature>org.eclipse.wst.common.modulecore.ModuleCoreNature</nature>
                                        <nature>org.eclipse.wst.common.project.facet.core.nature</nature>
                                        <nature>org.eclipse.jdt.core.javanature</nature>
                                        <nature>org.eclipse.wst.jsdt.core.jsNature</nature>
                                    </natures>
                                    

                                    【讨论】:

                                    • @Andronicus 我已经编辑了我的帖子,之前我在粘贴代码时遇到了错误。请看一下
                                    【解决方案23】:

                                    如果您的构建路径正确,则 ctrl + 单击将起作用

                                    【讨论】:

                                    • 我的构建路径正确,ctrl点击不起作用!
                                    猜你喜欢
                                    • 1970-01-01
                                    • 1970-01-01
                                    • 1970-01-01
                                    • 2012-07-03
                                    • 1970-01-01
                                    • 1970-01-01
                                    • 2018-04-22
                                    • 2018-03-01
                                    • 2014-04-04
                                    相关资源
                                    最近更新 更多