【问题标题】:Intellij Right click on a test does not present a "Run" optionIntellij 右键单击​​测试不显示“运行”选项
【发布时间】:2012-08-31 12:21:51
【问题描述】:

在 IntelliJ 中,当我右键单击测试时,我不再看到“运行 ClassX 或 MethodY”。事实上,没有“运行”窗口,当我右键单击时,我无法运行任何类。

大约 3 小时前一切正常,所以我不太确定发生了什么变化?

IntelliJ 10.5.1(许可版而非社区版) Java 1.6.0_24

有没有人可以帮助我解决这个问题? PS:所有项目都会发生这种情况。

更新 1 我安装了 IDEA 11 并从 10 导入设置,然后发现它不是免费升级关闭 IDEA 11 并开始使用 IDEA 10。我相当确定事情从那时起停止工作但不确定。那是问题吗?我可以以某种方式删除 IntelliJ 配置目录并重新启动吗?

当我右键单击没有运行选项时添加屏幕截图

【问题讨论】:

  • 只是检查,文件识别的文件类型(通常旁边有一个图标)在源识别文件夹下吗?
  • 是的,我可以在课堂和测试中看到 J 图标(不是带叉的 J 图标)
  • mm.. 它们被识别为 java 文件,但不显示为类或测试文件(其他图标),这可能是您在测试中缺少运行选项的原因。不知道为什么会这样。当 intellij 不索引大型 java 文件时,我见过一次
  • @CalmStorm,你试过File | Invalidate Caches 并重新启动?确保你没有使用 Oracle JDK,尝试重新导入 Maven 项目并重建。
  • 能发一下右键菜单的截图吗?您是从 devnet.jetbrains.net/docs/DOC-1228 尝试 10.5.4 还是从 jetbrains.com/idea/download/index.html 尝试 11.1.3?

标签: intellij-idea


【解决方案1】:

如果您的项目是 maven 项目,那么您只需右键单击 pom.xml 文件并选择“添加为 Maven 项目”即可。

这种方法对我有用。 (绿色加上倒数第三个)

【讨论】:

  • 我在敲我的头。您的解决方案在几秒钟内解决了我的问题。谢谢。
  • 谢谢.. 这个帮助了我。我将该项目添加为 Maven 项目。所以我从 maven 取消链接项目(从 pom.xml 文件的上下文菜单中),然后添加回 maven 项目和宾果游戏。运行选项出现
【解决方案2】:

我的问题是我的测试课不是公开的。我需要:

public class MyTest {

    @Test
    public void testMethod() {

代替:

class MyTest {

    @Test
    void testMethod() {

【讨论】:

  • 这绝对有效
【解决方案3】:

我遇到了同样的问题。为了解决这个问题,我必须确保我的类有一个正确的 main 方法:

public static void main(String[] args) {
}

我忘记了我的论点;-)

编辑:确保您的源代码位于 src 文件夹中。

【讨论】:

  • 如果您要否决这个答案,请解释原因。这是 IntelliJ 不提供“运行”选项的最常见原因。
  • 我错过了 [] 部分
  • 这里也一样!感谢您的解决方案!
  • @Meghna Natraj 无需在此处发布“相同”的 cmets。您的支持就足够了。
  • @JosiahYoder 虽然看起来很奇怪,但我只得到了代码并且奇怪地认为它是一个完整的项目。 IntelliJ 要求您将代码放在 src 文件夹中,因此我创建了一个项目,其中有一个 src 文件夹并将我的代码放在那里,然后我在使用 main 方法右键单击 .java 文件时运行按钮
【解决方案4】:

在我的情况下,原因是禁用了 JUnit 插件。 (文件——设置——插件——JUnit,检查,OK)

【讨论】:

  • 2019.2.3版本不存在菜单选项。
  • 这应该被标记为正确答案。谢谢!
  • 谢谢,我已经摸不着头脑了好几个小时,你的回答解决了我的问题
  • 对于 Mac,它位于文件 -> 首选项 -> 插件下
【解决方案5】:

如果您使用的是 JUnit 5 (Jupiter),当您使用来自 JUnit 4 的旧 @Test 注释时会发生这种情况。只需替换

import org.junit.Test;

import org.junit.jupiter.api.Test;

IntelliJ 应该再次显示“运行”按钮。

【讨论】:

  • 完美答案!
【解决方案6】:

好吧,经过大量观察后,我找到了一个 {HOME}/.java 目录,该目录似乎包含一些与 Jetbrains 相关的首选项。我删除了该目录以及 {HOME}/.IntelliJ* 目录。然后删除了我所有的 intellij 安装并从头开始重新下载它现在可以正常工作了..

叹息....

【讨论】:

  • .java 目录对我来说不存在。我很确定那些是 intellij 设置目录,所以不要擦除它们,除非你不在乎你的设置会丢失。
  • @Amalgovinus,是的!两个注意事项:1)如果您不想丢失设置,您可能可以只删除{HOME}/.IdeaIC15/system 文件夹并保留config2) 在我的 SBT 项目 的情况下,删除 .idea 项目文件夹并从 SBT 重新导入就足够了。同样,在这种情况下,您可能会丢失一些项目特定的设置:确定应该删除的特定文件留给读者作为练习。
  • 有同样的问题。关闭项目,删除 .idea 目录和 myProject.iml 文件。从现有资源创建新项目。无需重新安装。
  • 不得不删除新旧 .IntelliJ 目录。必须从头开始设置 IntelliJ,但每年只有一次。
【解决方案7】:

禁用gradle 插件为我解决了这个问题(社区版 2018.2)

【讨论】:

  • 这对我来说适用于 Ultimate Edition 2019.3.1。很奇怪。
  • 这里也一样。似乎 Gradle 插件抛出了一些异常(查看帮助 -> 在 Finder 中显示日志)。 2019.3.1 有这个问题。社区版。
【解决方案8】:

在我的情况下,我右键单击 src 文件夹并转到 -> 将目录标记为 -> 源根目录。

【讨论】:

  • 对我来说这很有效,+1,我高清 polygot 设置并忘记将 scala 标记为测试源根
【解决方案9】:

应该不需要删除任何配置文件。

我发现我曾经在上下文菜单中有 Run 选项来选择运行测试或运行 Scala 测试等。在我第一次选择一个选项后,我的选项不再存在。

按照此处文档中的说明创建运行/调试配置,我能够解决此问题并为该文件夹选择所需的测试类型...

https://www.jetbrains.com/help/idea/2016.1/creating-run-debug-configuration-for-tests.html?origin=old_help

【讨论】:

  • 请注意,这是来自不受支持且 真正 旧版本的 IntelliJ,所以我不确定这个特定答案与这个问题的相关性。跨度>
  • 哦。好的。也许有人在 2016.1.1 或更高版本上遇到同样的问题,我的回答可能会有所帮助。
  • 我在最新版本的 IntelliJ 上遇到了同样的问题
【解决方案10】:

由于我遇到了同样的问题,我可以清楚地看到当我按下控制键并悬停时@Test 没有提供任何提示,并且同样被确认为外部库没有添加 Gradle 依赖项所以我不得不更新启动 Intellij 时弹出的建议将项目作为 gradle 项目。

【讨论】:

    【解决方案11】:

    我遇到了同样的问题。我解决它 文件 -> 使缓存无效/重新启动 右键单击顶部的 pom.xml -> Maven -> 重新导入

    【讨论】:

      【解决方案12】:

      我刚遇到同样的问题,用下面的方法解决了。

      转到您的 $USER/$INTELLIJ 目录,例如$USER/.IdeaC2018.3 然后找到配置/插件。重命名插件目录并重启 IntelliJ。

      我的猜测是,问题是我升级 IntelliJ 并且与黄瓜插件不兼容时引起的。

      【讨论】:

        【解决方案13】:

        对我来说,这发生在更新 Idea,然后更新所有插件之后。显然Idea还没有重新启动。去File -> Settings -> Plugins and clicking 'Restart Idea'解决问题

        【讨论】:

          【解决方案14】:

          如果你能在主函数的左侧看到播放按钮,请单击右键并按运行。

          【讨论】:

            【解决方案15】:

            就我而言,我没有输出文件夹。 文件 -> 项目结构 -> 在“项目”选项卡下有“项目编译器输出” -> 定义您的文件夹。

            【讨论】:

              【解决方案16】:

              我可以通过从插件菜单中禁用 Gradle 插件并重新启动来解决此问题。

              【讨论】:

              • 这也是我的解决方案。注意:如果您启用了 Gradle 插件并且您有 Gradle Extension 插件禁用,您的运行菜单将不会出现并且 IntelliJ 将抛出错误(可以在帮助 > 在 Finder 中显示日志中找到)。对我来说,启用 Gradle 很好,但如果没有 Gradle Extension,它会破坏 IntelliJ。
              【解决方案17】:

              不幸的是,这些都不适合我。我不得不

              1. “文件”->“使缓存无效/重新启动”
              2. 点击 pom.xml 文件,然后点击 'maven' -> "Generate Sources"

              【讨论】:

                【解决方案18】:

                所以我在 pycharm 上遇到了这个问题,问题是已经有一个运行配置(在播放按钮旁边的下拉列表中)具有文件名。当我删除该运行配置时,它会创建一个正确的新配置。

                【讨论】:

                  【解决方案19】:

                  我遇到了同样的问题,我尝试了上述所有解决方案,但对我没有任何效果,但在我安装 TestNG 插件后它开始工作,因为我的单元测试中使用了一些 TestNG 注释

                  【讨论】:

                    【解决方案20】:

                    在我从 2019.2.4 更新之后,我的 Intellij 2019.3 也遇到了同样的问题。我以为问题首先来自更新,但是回滚没有解决,所以我尝试了上面的解决方案,问题得到解决。从头开始配置我的所有项目后,问题又回来了,所以我开始检查我所做的一切。我发现 Eclipse 的一个旧项目使用文件 .launch 来运行并且需要一些插件才能在 Intellij 上执行导致问题,在禁用以下插件后测试选项返回。

                    【讨论】:

                      【解决方案21】:

                      就我而言,我的项目正在使用 Bazel。

                      解决方案是从 Bazel 插件同步 Bazel

                      【讨论】:

                        【解决方案22】:

                        由于这是 Google 在尝试弄清楚如何运行 Scala 项目时获得的最高结果,并且由于某种原因 IntelliJ(我在 2020.1.2)不会自动为 Scala 项目创建运行配置(与 Java 项目相反),值得为未来的读者介绍基础知识:

                        1. 点击屏幕右上角的“编辑配置”。
                        2. 在打开的窗口中,点击左上角的+按钮。
                        3. 选择“应用程序”。

                        现在,让我们来看看必填字段:

                        1. 在“名称”字段中,输入此配置的名称,例如“跑”。
                        2. 在“主类”字段中,输入您的主类名称。
                          或者,使用左侧的 ... 按钮:在打开的窗口中,单击“项目”选项卡,导航到您的主类,选择它并单击“确定”。
                          注意:如果您的主类没有 main 方法,IntelliJ 会显示警报。请参见下面的清单 9。
                        3. 确保“工作目录”字段中的值正确(应该是项目文件夹)。
                        4. 在“使用模块的类路径”中,选择您的模块(参见project vs module in IntelliJ
                        5. 这就是配置。单击“应用”,然后关闭窗口。以下是最终结果示例:

                        • 请注意,我的 Main 类是名为 Demo 的包的一部分,但没有必要拥有包。
                        1. 在主类中,确保有一个主方法。
                          对于 java,请参见 @Josiah Yoder answer,对于 Scala,它是:

                          def main(args: Array[String]): Unit = {
                          }
                          
                        2. 就是这样。您现在应该启用了绿色的运行和调试按钮。

                        【讨论】:

                          【解决方案23】:

                          插件和 IDEA 本身之间似乎存在版本冲突,通常会破坏此功能。这里的许多解决方案表明人们手动尝试识别插件,我发现这是不可能的。所以这是一种通用的方法,无需像建议的解决方案那样卸载 IDEA:

                          文件>设置>插件>齿轮图标>禁用所有下载的插件

                          这为我解决了问题。

                          【讨论】:

                            【解决方案24】:

                            在 pom.xml 上搜索 pom.xml 文件 --> 右击 --> 点击 Add as Maven 项目。

                            你应该会看到一个弹出窗口,说正在下载 Mavin 插件。

                            等到它完成。这需要一些时间,具体取决于 pom.xml 中的内容数量。

                            在下面的截图中,“BackendApp.java”是驱动Java文件,包含

                            public static void main(String[] args){}

                            右键单击此类驱动程序 java 文件,您会看到绿色的运行选项。

                            【讨论】:

                              【解决方案25】:

                              确保方法不是static! JUnit 只允许在实例方法之前使用@Test,但即使您在static 方法之上使用@Test,Intellij 也不会抱怨。

                              【讨论】:

                                【解决方案26】:

                                如果项目已经添加为 Maven 项目,请取消链接。

                                右键单击项目 -> Maven -> 取消链接 Maven 项目

                                然后再次链接:

                                右键 pom.xml -> + 添加为 Maven 项目

                                【讨论】:

                                  猜你喜欢
                                  • 1970-01-01
                                  • 1970-01-01
                                  • 1970-01-01
                                  • 1970-01-01
                                  • 1970-01-01
                                  • 2019-04-28
                                  • 1970-01-01
                                  • 1970-01-01
                                  • 2013-09-22
                                  相关资源
                                  最近更新 更多