intellij-idea IntelliJ(2020.2)-如何为基于Gradle的项目禁用“自动构建项目”?

jv4diomz  于 2022-11-01  发布在  其他
关注(0)|答案(2)|浏览(319)

我是Eclipse/STS用户/开发人员,现在正在尝试使用IntelliJ Idea(CE)

  • 2020年2月1日、2日、3日

对于一个基于Gradle的项目,当我打开IDE时,会发生以下情况

好的,让IDE加载项目...但是

从上面看,这就是问题所在,我不希望IDE自动启动来构建/重建项目。我只需要,打开项目,就这样。

**观察结果:**例如,Eclipse/STS中存在禁用 * 自动构建 * 的选项

我在网上做了一个研究,我读了下面的帖子和问题:

遗憾的是对话框选项被改变了,但是...
因此:

从上面看,似乎没有什么事可做。
x1c4d 1x指令集

**观察结果:**从上方观察Build project automatically选项是否被禁用

即使禁用了该功能,在重新启动IDE之后,我也必须始终手动停止生成过程

那么什么是失踪?或者我需要一个特殊的额外插件来完成我的目标?

5anewei6

5anewei61#

您显示的图片表明您正在使用Gradle构建项目,但您禁用的编译器选项与使用Idea而非Gradle构建项目相关。对于2020.2版本,您需要执行以下操作:
1.打开“设置”〉“构建工具”页面。
1.禁用“重新加载生成脚本中的更改”选项。
当您更改构建脚本时,您会在编辑器的右侧看到一个小的gradle图标。
如需了解更多信息,请参阅IntelliJ IDEA帮助〉Gradle部分。https://www.jetbrains.com/help/idea/work-with-gradle-projects.html#auto_reload

zphenhs4

zphenhs42#

IntelliJ的Gradle支持中有两个不同的东西有时会混淆:syncbuild。您的图片演示了sync过程(注意工具窗口上的标题)。单词build在这里有点误导。
什么是sync?在Gradle中,我们使用Groovy来定义构建过程。Groovy是一种命令式编程语言,因此如果不实际执行脚本,很难预测生成的依赖关系图。在sync期间,Idea执行gradle buildconfiguration phase(构建依赖关系图),并从Gradle守护进程获取已配置的对象。此信息用于在IDE中设置项目:模块、库、依赖关系、哪些源是测试源、哪些是生产源等。
sync期间实际的构建并没有发生。你可以通过在任何源文件中添加语法错误来说服自己,并观察同步是否成功。但是如果你调用它,构建将失败。
在回答最初的问题时:您不能禁用自动构建,因为它尚未启用。
可以在Gradle项目中禁用同步吗?简短的回答-不可以。如果您需要代码浏览器,而该浏览器并不需要理解源代码中的所有交叉引用,那么IDEA可能不是最佳选择。
左、右;
如果没有sync,IDE就不知道哪些文件是源文件,哪些不是。IDEA不能打开文件夹。它只能打开项目。好的一面是模块可以包含文件夹。因此,您可以执行以下操作:File | New | Project。选择Empty projectNext,选择要打开的源文件夹Finish之外的某个随机文件夹。
然后添加新模块:

在左侧面板中选择Java,其他内容保持默认值NextFinish。然后在新模块中删除现有内容根,并添加包含源的文件夹作为新的内容根

生成的项目基本上是无用的。大量的红色代码(至少,来自外部库的未解析符号),没有检查,没有导航,没有意义。但在一些罕见的情况下,它可能确实有用。

相关问题