eclipse - 如何在 intellij 中运行预构建 gradle java 项目
问题描述
我一直在使用eclipse。最近,我开始使用 intellij IDE。
我的项目是以 gradle 作为构建工具的核心 java 项目。在eclipse中,我曾经通过类似命令构建项目并将其导入到项目中。然后我过去运行它没有任何问题。
我曾经经常使用的以下命令之一。
gradle -s --refresh dependencies clean build eclipse -x findbugsMain -x checkstyleMain
gradle -s --refresh dependencies clean build -x findbugsMain -x checkstyleMain
gradle build -x findbugsMain -x checkstyleMain
现在,当我尝试将我的项目作为模块导入 intellij 并尝试运行时,它会尝试再次构建所有内容并失败并出现错误。
我不想让 intellij 再次构建项目,而是使用我通过命令行完成的已经构建的项目。
解决方案
如果您先构建表单命令行,然后使用设置从 IDE 构建(macOS 上的首选项)| 构建、执行、部署 | 构建工具 | 摇篮 | 使用设置为Gradle的选项构建和运行,IDE 将重用以前的构建缓存结果,前提是自上次 Gradle 构建以来没有任何更改。重要的是要注意两点:
- 从 IDE 构建应该被调用为 Build | 构建行动,而不是重建。Rebuild IDE 操作与 Gradle 清理构建任务不同。使用 clean build Gradle 将重用缓存(如果启用),并且如果没有更改,则不会重建所有类并处理所有资源。在 IDE Rebuild操作的情况下 - IDE 会将以前的构建结果标记为“脏”,并将重新编译所有类和资源。
- 您在 IDE 设置中为项目配置的 Gradle 必须与您在命令行中使用的相同。为了确保使用相同的 Gradle,配置为项目使用 Gradle 包装器更容易。
此外,如果您根本不想构建 IDE,您可以从Run/Debug Configuration的Before launch部分删除Make操作。
推荐阅读
- vue.js - v-data-table 中的 Vuetify v-data-table:扩展项插槽中的内容故障
- c++ - 是否允许 const 数据成员在类外更改?
- flutter - Flutter SingleChildScrollView 不会滚动
- css - 在 CSS 中,overflow 和 float 是如何交互的?
- nlp - 如何从 spaCy 标记重建原始文本,即使在复杂的空白和标点符号的情况下
- r - 有没有可能通过 DCC GARCH (1,1) 代码自动运行几十只股票?
- python - 数据框:识别系列的百分位值,从其他系列中获取相应的观察值
- python - IndexError:在删除列上使用应用函数时索引超出范围
- ios - UIViewRepresentable 相对于其中的 UIKit 控件如何调整自身的大小?
- ruby-on-rails - 如何计算通过 Mongoid 访问/查询数据库的次数?