在 jenkins 中构建 delphi 项目

Build delphi project in jenkins

我试图在我的公司设置 jenkins,但遇到了一些问题。 我正在使用此命令构建项目:

SET MSBuild="C:\Windows\Microsoft.NET\Framework\v3.5\MSBuild.exe"
SET BUILDS=C:\Program Files (x86)\Jenkins\jobs\xxx\builds\
SET OUTPUT_PATH="%BUILDS%%BUILD_NUMBER%"
SET RSVARS="C:\Program Files (x86)\Embarcadero\RAD Studio.0\bin\rsvars.bat"
CALL %RSVARS%
SET PATH=%PATH%;D:\komponenty\DXE3\ADSI
%MSBuild% xxx.dproj /t:Build /p:Config=Debug;Platform=Win32;DCC_ExeOutput=%OUTPUT_PATH% /maxcpucount:4

当我在 cmd 中输入它时它工作正常但是。我给了詹金斯服务管理权限。当我尝试使用 jenkins 构建项目时,我收到如下错误:

F1026: File not found: 'ADSI.dcu

这是 Delphi 的一个组件,我在第二个分区上有这个组件。 Jenkins 可以访问此分区上的许多组件,但不能访问此分区。

两者的区别在于你的当前目录。
Jenkins 将在特定的工作文件夹中启动您的工作(可能 C:\Users\<User-ID>\.jenkins\jobs\<Job-Name>\workspace)。

将以下内容添加到您的 Jenkins 命令以查看您从何处进行构建:

echo Current Folder: %cd%

一个简单的 "solution" 就是在 Jenkins 中添加一个命令,将目录更改为您从命令行进行测试时所在的同一文件夹。

但是,我建议您执行以下操作:

  • 确保 Jenkins 将源代码库中的最新源代码放入其工作文件夹中。 (根据您使用的特定工具,有各种插件。)
  • 确保 cd(更改目录)到工作区文件夹中的正确文件夹。