没有找到合适的产品?
联系客服协助选型:023-68661681
提供3000多款全球软件/控件产品
针对软件研发的各个阶段提供专业培训与技术咨询
根据客户需求提供定制化的软件开发服务
全球知名设计软件,显著提升设计质量
打造以经营为中心,实现生产过程透明化管理
帮助企业合理产能分配,提高资源利用率
快速打造数字化生产线,实现全流程追溯
生产过程精准追溯,满足企业合规要求
以六西格玛为理论基础,实现产品质量全数字化管理
通过大屏电子看板,实现车间透明化管理
对设备进行全生命周期管理,提高设备综合利用率
实现设备数据的实时采集与监控
利用数字化技术提升油气勘探的效率和成功率
钻井计划优化、实时监控和风险评估
提供业务洞察与决策支持实现数据驱动决策
翻译|行业资讯|编辑:龚雪|2023-07-25 10:52:40.710|阅读 42 次
概述:本文将为大家介绍IntelliJ IDEA目前很流行的构建工具Gradle,欢迎下载最新版IDE体验~
# 界面/图表报表/文档/IDE等千款热门软控件火热销售中 >>
IntelliJ IDEA,是java编程语言开发的集成环境。IntelliJ在业界被公认为最好的java开发工具,尤其在智能代码助手、代码自动提示、重构、JavaEE支持、各类版本工具(git、svn等)、JUnit、CVS整合、代码分析、 创新的GUI设计等方面的功能可以说是超常的。
如今构建工具是一切项目的重要组成部分,而IntelliJ IDEA已与大多数构建工具集成,目前流行的构建工具是Gradle。在本文中,我们简要介绍一下它与IntelliJ IDEA的集成历史以及IDE内实现的委托流程。
IntelliJ IDEA 的上市时间比其他构建工具都要早,多年来一直提供其原生构建系统并取得了巨大成功。 IntelliJ IDEA 构建系统始终是编译、运行测试和打包到 JAR 等任务的最佳选择。
开发者通常主要关注编译和运行测试,因此构建流程的快速反馈周期至关重要,而我们则擅长执行 JUnit 和 TestNG 测试以及增量编译。
Maven 推出时表现出强大的项目依赖项管理能力,我们利用了它的项目结构,并将下载和解析依赖项委托给 Maven(但将构建流程留给 IntelliJ IDEA)。
我们能够在 IntelliJ IDEA 构建系统中复制 Maven 的构建流程,基于 Maven 项目模型,IntelliJ IDEA 可以用最少的额外步骤构建项目。同时我们开发了有效检索资源处理信息的机制,覆盖从 pom.xml 生成 MANIFEST.mf 文件,进一步增强了构建流程。
然后,我们将构建流程的结果应用到执行测试的原生流程。
借助这项改进,我们得以涵盖使用IntelliJ IDEA成功构建Maven项目的所有必要场景。
继续对Maven项目使用这种设置:从Maven检索必要信息,使用原生IntelliJ IDEA机制构建和启动项目,甚至对Spring Boot和 Micronaut等流行工具也是如此。
当Gradle在市场上推出时,它让用户能够更好地自定义构建流程并为其添加更多功能。
当时决定开始采用与Maven类似的方式时,这意味着让 Gradle 处理依赖项和检索必要信息,而 IntelliJ IDEA 将编译代码、运行测试和构建项目。
不过Gradle项目模型似乎有些过于灵活,您可以在构建脚本中使用不同的源集或语言,例如Groovy、Scala或Kotlin。 另外,在构建脚本中还可以编写命令式代码,为构建系统提供所需行为和设置的直接指令。
例如可以在运行之前或测试运行之前启动数据库,另外与包含静态配置的Maven相比,Gradle构建脚本允许在资源处理期间执行任意代码,使用IntelliJ IDEA 功能很难重现此类配置。
显然在标准操作方面表现出色,但自定义操作,例如处理资源和其他自定义任务,对我们来说相当难以控制和维护,最重要的是难以在 IntelliJ IDEA 构建系统中复制。
因此,我们决定将测试运行委托给 Gradle:
当您运行测试时,Gradle test任务将与属于Gradle构建周期的其他任务一起执行,如下所示:
此外IntelliJ IDEA 还提供了额外功能,举例来说,您需要运行的测试可能分布在不同源集中。 集成测试在一个源集中,而功能测试则在另一个源集中。
IntelliJ IDEA 能够正确确定特定测试文件的测试任务及其位置,确保相关测试有效执行。
此外IntelliJ IDEA还提供测试执行级别的信息 – 方法、类或软件包,例如Gradle 默认执行源集中的所有测试。
但是IntelliJ IDEA会应用筛选模式,并在 Run(运行)工具窗口中显示消息,告知您执行测试的确切位置:
总体而言,Gradle 的测试委托相当成功。
下一步自然是将 Build(构建)和 Run(运行)操作也委托给 Gradle,最终委托成为默认选择。
现在,在应用程序中使用 Run(运行)操作时,它会在 Gradle 上下文中使用并动态完成。
类似于现有 Gradle 应用程序插件,我们正在创建运行主类的 JavaExec 类型的任务,这可以确保应用程序运行配置的最大正确性。
在委托模式下触发 Build(构建)时,IntelliJ IDEA 会根据项目中被修改的模块在 Gradle 中生成需要执行的命令列表,您可以在BuildOutput中查看此信息:
IntelliJ IDEA 还可以检测在不同模块中修改的文件并仅构建修改的部分。
目前,有两种委托模式可供选择:Gradle 和 IntelliJ IDEA。
还要注意在编译流程中支持注解处理,不过当代码由IntelliJ IDEA 编译时,有一些边缘情况很难处理,例如注解处理程序在 Gradle 子项目中定义的情况。
这就是我们现在所处的阶段,仍在尝试以委托模式运行Spring和Micronaut运行配置,并在IDE中持续改进Gradle委托流程。
Jetbrains技术交流群(QQ):786598704 欢迎一起进群讨论
本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@wqylolg.cn
文章转载自:慧都网PC-lint Plus 作为一款功能强大的静态代码分析工具,能够帮助开发者显著提升代码质量,是软件开发过程中的得力助手。
在物流、零售、制造业等众多行业中,条码识别技术是不可或缺的一部分。它可以帮助快速获取信息、提高工作效率并减少人为错误。Barcode Reader Toolkit for Windows 是一款强大的条码开发工具包,它可以帮助开发者轻松地在自己的应用程序中添加条码识别功能。
在设计和工程领域,CAD(计算机辅助设计)软件的重要性不言而喻。今天为大家详细介绍一款出色的 CAD 工具 ——CST CAD Navigator,它凭借诸多独特之处,为用户打造了高效且便捷的使用体验。
Parasoft作为自动化软件测试领域的领导者,已率先加速支持全新的MISRA C:2025合规标准,并计划于2025年5月推出C/C++test 2025.1版本。
IntelliJ在业界被公认为优秀的Java开发平台之一,在智能代码助手、代码自动提示、重构、J2EE支持、Ant、JUnit、CVS整合、代码审查、 创新的GUI设计等方面表现突出,并支持基于Android平台的程序开发。
服务电话
重庆/ 023-68661681
华东/ 13452821722
华南/ 18100878085
华北/ 17347785263
客户支持
技术支持咨询服务
服务热线:400-700-1020
邮箱:sales@wqylolg.cn
关注我们
地址 : 重庆市九龙坡区火炬大道69号6幢