【问题标题】:How do I use the Manifold plugin with IntelliJ?如何在 IntelliJ 中使用 Manifold 插件?
【发布时间】:2021-12-12 02:24:06
【问题描述】:

我正在尝试使用 Manifold 插件,如下所示:

@Test
    void printBoard() {
        @JailBreak TicTacToe game = new TicTacToe();
        game.printBoard();

        assertEquals("- ,- ,-\r\n- ,- ,-\r\n- ,- ,-", outputStreamCaptor.toString()
                .trim());
    }

在我更改游戏中的私有棋盘变量后,我想添加更多断言来测试棋盘是否打印正确(这就是我想使用 JailBreak 注释的原因。

我已经在 Intellij 中安装了插件,方法是转到设置 > 插件 > 搜索歧管 > 安装/应用它。然后我重新启动了我的 IDE,但没有运气(编译器无法识别@JailBreak)。

有人对可能出现的问题有任何想法吗?如果有帮助的话,我正在使用 Java8。

【问题讨论】:

    标签: java unit-testing intellij-idea plugins intellij-plugin


    【解决方案1】:

    Manifold 插件会分析您项目的构建配置以动态应用功能,例如通过 @Jailbreak 支持类型安全反射。请参阅manifold-ext setup instructions。在 Gradle 术语中,要支持@Jailbreak,您的项目必须具有对manifold-ext-rt实现 依赖和对manifold-extannotationProcessor 依赖。此外,您需要添加 -Xplugin:Manifold 编译器参数。此信息在setup docs 中有详细说明。

    如果您不使用 Gradle 或 Maven,您可以在模块的依赖项设置中直接使用 Manifold binaries 配置您的 IntelliJ 项目。您还需要通过 File | 直接设置编译器参数(-Xplugin:Manifold-processorpath)。设置 |构建、执行、部署 |编译器 | Java 编译器。

    【讨论】:

      猜你喜欢
      • 2015-04-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-11-27
      • 1970-01-01
      相关资源
      最近更新 更多