问题标签 [build-automation]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
build-automation - 批处理文件中的字符串符号操作?
有没有办法使用 .bat/.cmd 文件获取字符串的子字符串?
例如,给定字符串“hello.txt”,有没有办法去除 .txt?
编辑:还有一种更通用的方法可以做到这一点,而不是假设它是文件名或文件路径?
build-automation - 学习高级批处理文件使用的最佳免费资源?
学习高级批处理文件使用的最佳免费资源是什么?
continuous-integration - 与 Nant 持续集成
我准备第一次使用持续集成。我将使用 Nant 进行自动化构建和测试任务,并尝试找到合适的 CI 工具来轮询存储库并执行 Nant 脚本。
到目前为止,我已经大致研究了以下内容:
- 哈德逊
- 巡航控制
- 德拉科
到目前为止,我的感觉是,由于大部分工作将由 Nant 完成,Draco 会很好,因为它应该很容易安装/设置。另一方面,Cruise Control 和 Hudson 可能会提供更好的报告选项。
将 Nant 用于构建和测试任务时,执行持续集成的最佳方式是什么?
c++ - 使用maven2构建基于autotools的C/C++包
我正在研究一个集合 MATLAB、Java 和 C/C++ 组件,它们都可以互操作,但编译/安装步骤截然不同。我们目前不为 MATLAB 编译任何东西,使用 maven2 进行 Java 构建和单元测试,并使用 autotools 进行 C/C++ 构建和单元测试。
我想使用 maven2 将所有内容移至单个构建和单元测试系统,但找不到一个插件,该插件将允许 C/C++ 代码流保持基于 autotools 并简单地将其包装在 maven 构建中。不得不取消 autotools 支持并在 maven 中重新创建所有依赖项很可能会破坏交易,所以我正在寻找一种让 maven 和 autotools 很好地协同工作的方法,而不是必须在两者之间进行选择。
这是可能的,甚至是可取的吗?有没有我忽略的资源?
build-process - 您推荐哪些工具来自动构建您的应用程序?
就在几年前,开发人员实际上制作了交付给客户的版本。这显然是一场灾难,原因不胜枚举。
然后,当我们开始了解我们方法的错误时,我们寻找一种在专用构建机器上自动构建整个应用程序的方法。当时的文化非常反对引入外部工具,因此我们通过编写 VB 应用程序构建了自己的自动构建系统。
这工作了一段时间,直到项目的结构开始改变,添加了新项目,我们需要以不同的方式构建应用程序。然后,我们的手动汽车制造商的弱点变得明显,并且随着时间的推移,变得越来越繁重。这种疾病现在已经发展到 QA(拥有我们的构建过程)甚至无法维护自动构建器的地步,因为它需要越来越多的编程技能。每次我们添加项目或更改现有项目中的某些内容时,它都会消耗更多的开发人员时间来使其正常工作。曾经有几天我们因为系统损坏而无法生成构建。
我现在处于可以改变这个过程的位置,我希望废弃整个系统并在它的位置放置其他东西。我的目标是:
- 拥有一个可以在每天特定时间以零人工交互运行的自动构建系统。它应该能够收集所有源代码、编译所有应用程序、创建设置、将成品放在网络共享上,并可能触发自动化测试系统启动(我们使用 QTP)。
- 自动构建系统应该足够灵活,可以轻松适应项目的变化,而无需进行大修。
- 它应该足够简单,以便 QA 可以拥有系统,而不需要开发人员资源来更改构建的方式。
你有什么经验?你能推荐一个自动构建系统吗?我应该有不同的目标吗?
tfs - 手动触发 TFS 团队构建
您将如何从团队构建中手动触发其他团队构建?例如,当我们在 CC.Net 中时,如果某些构建成功,则会触发其他构建。第二个构建可以是使用此组件的项目,也可以是用于同一组件的其他长时间运行的测试库。
svn - SVN结帐忽略文件夹
我可以忽略 svn checkout 上的文件夹吗?我需要在我的构建服务器结帐时忽略 DOCs 文件夹。
编辑:忽略外部不是一个选项。我有一些我需要的外部设备。
continuous-integration - CruiseControl [.Net] 与 TeamCity 的持续集成?
根据实际经验,我想问一下您认为哪种自动化构建环境更好。我打算做一些.Net 和一些Java 开发,所以我想要一个支持这两个平台的工具。
我一直在阅读并发现了用于 stackoverflow 开发的CruiseControl.NET和TeamCity,它支持在不同的操作系统平台上基于不同的编程语言构建代理。那么,如果您在这两个方面都有一些实践经验,您更喜欢哪一个,为什么?
目前,我最感兴趣的是该工具的易用性和管理性,更不用说 CC 是开源的,而且当你有很多项目要运行时,TC 在某些时候会受到许可(因为,我少量项目需要它)。
此外,如果有其他工具可以满足上述要求,并且您认为值得推荐 - 请随时将其包含在讨论中。
java - 如何让 Cobertura 因代码覆盖率低而无法构建 M2
如果线路或分支覆盖率低于给定阈值,我正在尝试将我的 WAR 项目构建配置为失败。我一直在使用优秀书籍Java Power Tools第 455 页提供的配置,但没有成功。这是我项目的 Maven 2 POM 的相关片段:
正如我所说,覆盖率报告工作正常,问题是如果线路或分支覆盖率低于我指定的阈值,“安装”目标不会失败。有没有人有这个工作,如果有,你的 POM 是什么样的,你使用的是哪个版本的 Cobertura 和 Maven?我正在使用 Maven 2.0.9 和 Cobertura 2.2。
我试过谷歌搜索和阅读 Cobertura 文档,但没有运气(至少可以说后者很少)。
c# - 如何从一个 Visual C# 项目构建两个不同的应用程序?
我有一个源代码库,它根据构建时定义的标志创建两个不同的应用程序。我可以使用 Makefile 来构建这两个应用程序,方法是指定两个不同的目标,一个使用标志编译,一个不使用标志编译,并且有一个可以构建两者的聚合目标。
如何在 Windows 上执行与 Visual C# Express 相同的操作?