繁体   English   中英

如何运行单个 class 忽略其他 class 中的编译错误

[英]How to run single class ignoring compilation error in other class

我正在使用 IntelliJ IDEA 2017.3。 我有一个名为“test”的项目,它在 src 文件夹下有两个类:

  • Main ,有打印出“Hello World”的主要方法
  • CompileErrorClass ,有一个编译错误的方法

项目结构图

这两个 class 没有依赖关系。 我试图在 Main class 中运行 main(),并将启动前设置为“构建,无错误检查”

运行设置图片

我收到一条错误消息

“错误:找不到或无法加载主 class 主”。

当我修复CompileErrorClass中的编译错误时, main()按预期工作。 或者,如果我在 Eclipse 中运行同一个项目,即使出现编译错误,它也能正常工作。

如何在 IntelliJ 中设置运行配置以运行单个 class 而忽略其他 class 中没有依赖项的编译错误?

为了能够运行有错误的代码,您需要更改设置。 转到Build, Execution, Deployment | Compiler | Java Compiler Build, Execution, Deployment | Compiler | Java Compiler Build, Execution, Deployment | Compiler | Java Compiler并将Use compiler:组合框设置为Eclipse并启用proceed on errors复选框。 这允许编译类,即使它们有错误。

要在项目出现错误时启动运行配置,您需要Build, no error check在 Before Launch 部分Build, no error check ,而不是Build

您可以将 CompileErrorClass 放在一个文件夹中,然后转到“项目设置/模块”并将该文件夹标记为“已排除”。 该文件夹将显示为红色。

快捷方式:您可以“右键单击”文件夹并选择“将目录标记为已排除”。

在图像中,您可以看到红色的“bean”目录。 Bean 目录标记为“已排除”。

如果您想在Main类中运行 'main()' 方法并查看输出而不修复CompileErrorClass的错误:

在项目视图中选择“Main”类,转到 Run --> Edit Configurations --> Before Launch 并在 Before Launch 中单击 + 并选择Build, no error check或单击“-”取出(删除)任何在那里设置 --> 单击确定。 如果你去掉(使用'-')任何设置,那么'Before Launch'应该没有任何设置,它的设置应该是空的,null。

完成上述操作后,右键单击 Main 类,然后运行它。 你会看到输出。 即使使用编译器(位于设置 --> 构建、执行、部署 --> 编译器 --> Java 编译 --> 使用编译器)将 javac 选为编译器,您也会看到输出。

以下是如何在 Intellij Idea 中全局启用部分编译:

转到文件 > 设置 > 构建、执行、部署 > 编译器 > Java 编译器,然后选中“不生成警告”复选框。 如何全局启用部分编译

步骤如下:

  1. 设置Do not build before run (只需要设置一次)
    1. 菜单 → 运行 → 编辑配置...
    2. ☑︎ 您的运行配置
    3. 运行/修改选项 → Java / ☑︎ Do not build before run
  2. 仅重新编译选定的文件(记得在运行前执行此步骤)
    1. Select 需要编译的包或文件。
    2. 菜单 → 构建 → 重新编译所选文件 ( ⇧ ⌘ F9 )
  3. 运行或调试您的运行配置。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM