XAMPP配合Jenkins:在本地环境配置轻量级持续集成与自动化部署流程

浅浩吖_5443

浅浩吖_5443

2026-06-14

377人浏览

原创

xampp + jenkins 在 windows 本地做轻量级 ci 可行,但需避开 xampp 默认端口(80/3306)冲突,正确配置 svn 认证、ssl 证书、代理及 ant/jmeter 路径,否则易出现绑定失败、认证异常或路径错误。

xampp配合jenkins:在本地环境配置轻量级持续集成与自动化部署流程

直接说结论:XAMPP + Jenkins 在 Windows 本地做轻量级 CI 是可行的,但必须绕开 XAMPP 自带的 Apache 和 MySQL 对 Jenkins 的干扰,尤其不能让 Jenkins 运行在 80 或 3306 端口上——否则会冲突、启动失败、日志报错 Address already in use。

为什么 Jenkins 不能和 XAMPP 共用默认端口

XAMPP 默认占用了 80(Apache)、443(HTTPS)、3306(MySQL)、21(FTP)等端口。Jenkins 启动时默认尝试绑定 8080,看似不冲突,但很多用户为图方便手动改成了 80,结果 Jenkins 就起不来,控制台只显示 java.net.BindException: Address already in use。

更隐蔽的问题是:XAMPP 的 mysql 服务若已运行,而 Jenkins 插件(如 Database Plugin 或自定义构建脚本)又尝试连接本地 3306,可能因权限或 socket 路径不一致导致连接超时,错误信息常为 Communications link failure 或空连接。

  • 务必检查端口占用:netstat -ano | findstr :8080(确认 Jenkins 端口未被其他 Java 进程占)
  • Jenkins 启动命令中显式指定端口:java -jar jenkins.war --httpPort=8081
  • 如果要用反向代理(比如用 XAMPP 的 Apache 代理 Jenkins),必须配置 ProxyPass 和 ProxyPassReverse,且 Jenkins 系统配置里要填对 JENKINS_URL(如 http://localhost/jenkins/),否则登录跳转、Webhook 回调、静态资源路径全乱

SVN 拉取失败常见于 XAMPP 环境的三个原因

在 XAMPP 环境下配 SVN,不是插件装了就能跑通。Jenkins 用的是 Java 实现的 SVNKit,它不依赖系统 svn 命令,但会受 Windows 用户权限、SSL 证书、代理设置三重影响。

Jenkins
Jenkins

通过 REST API 与 Jenkins CI/CD 服务器交互。适用于触发构建、查询状态、查看控制台输出、管理任务或监控 Jenkins...

下载

典型现象:Job 配置好 SVN URL 和凭证后,点击 “Check now” 报错 org.tmatesoft.svn.core.SVNAuthenticationException: svn: E170001: Authentication required,即使密码正确也反复弹窗。

  • 原因一:Jenkins 服务以 Local System 账户运行(Windows 服务默认),无法读取你当前用户保存的 SVN 凭据(存于 %APPDATA%\Subversion\auth\)。解决方法:改用 Windows 任务计划程序启动 Jenkins,或手动指定 JVM 参数 -Dsvnkit.http.sslProtocols=TLSv1.2
  • 原因二:SVN 服务器用的是自签名证书,Jenkins 会拒绝握手。需在 Jenkins 启动前导入证书到 Java truststore:keytool -import -alias svn-server -file server.crt -keystore "%JAVA_HOME%\jre\lib\security\cacerts"
  • 原因三:公司网络走 HTTP 代理,但 Jenkins 没配。进 Manage Jenkins → Configuration → Advanced → Proxy 填写 Host、Port、Username、Password(如有),否则连 svn:// 或 https:// 都超时

用 Ant + build.xml 执行 JMeter 脚本时路径容易出错

你在 XAMPP 下跑 Jenkins,又用 Ant 调 build.xml 执行 JMeter 测试,最常卡在路径解析上——因为 Ant 默认工作目录是 Jenkins Job 的 workspace,而 JMeter 的 jmeter.properties、CSV 数据文件、HTML 报告输出路径全是相对路径,稍有不慎就报 Could not read properties file 或 java.lang.IllegalArgumentException: Results file does not exist。

  • 在 build.xml 里显式指定绝对路径:<property name="jmeter.home" value="C:/jmeter/apache-jmeter-5.6"></property>,别用 ../jmeter
  • JMeter 的 CSV 数据文件路径,不要写成 data/testdata.csv,而应写成 ${basedir}/data/testdata.csv,并在 Jenkins Job 的 “Build Environment” 中勾选 “Set Jenkins environment variables”
  • HTML 报告生成后,Jenkins 的 Publish HTML Reports 插件要求路径是相对于 workspace 的子目录,比如 report/html,对应磁盘路径就是 C:/xampp/jenkins/workspace/your-job/report/html;若 Ant 输出到了 C:/temp/report,插件就找不到

真正麻烦的不是配置步骤多,而是 Windows 权限模型、Java 进程用户上下文、SVN 认证缓存机制这三者在 XAMPP 环境下叠加之后,错误表现高度非线性——同一个配置,在你本机能跑,在同事电脑上就卡在凭据那一步。建议每次改完配置后,先在 Jenkins Script Console 里执行一段 Groovy 测试 SVN 连通性:new org.tmatesoft.svn.core.wc.SVNWCClient().doInfo(new java.io.File('C:/xampp/jenkins/workspace/test'), org.tmatesoft.svn.core.SVNRevision.WORKING),比盲试快得多。

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

jenkins xampp 环境配置

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
php文件怎么打开
php文件怎么打开

打开php文件步骤:1、选择文本编辑器;2、在选择的文本编辑器中,创建一个新的文件,并将其保存为.php文件;3、在创建的PHP文件中,编写PHP代码;4、要在本地计算机上运行PHP文件,需要设置一个服务器环境;5、安装服务器环境后,需要将PHP文件放入服务器目录中;6、一旦将PHP文件放入服务器目录中,就可以通过浏览器来运行它。

2023.09.01

10464

6

php怎么取出数组的前几个元素
php怎么取出数组的前几个元素

取出php数组的前几个元素的方法有使用array_slice()函数、使用array_splice()函数、使用循环遍历、使用array_slice()函数和array_values()函数等。本专题为大家提供php数组相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.11

6141

5

php反序列化失败怎么办
php反序列化失败怎么办

php反序列化失败的解决办法检查序列化数据。检查类定义、检查错误日志、更新PHP版本和应用安全措施等。本专题为大家提供php反序列化相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.11

2115

5

php怎么连接mssql数据库
php怎么连接mssql数据库

连接方法:1、通过mssql_系列函数;2、通过sqlsrv_系列函数;3、通过odbc方式连接;4、通过PDO方式;5、通过COM方式连接。想了解php怎么连接mssql数据库的详细内容,可以访问下面的文章。

2023.10.23

3868

4

php连接mssql数据库的方法
php连接mssql数据库的方法

php连接mssql数据库的方法有使用PHP的MSSQL扩展、使用PDO等。想了解更多php连接mssql数据库相关内容,可以阅读本专题下面的文章。

2023.10.23

4574

6

html怎么上传
html怎么上传

html通过使用HTML表单、JavaScript和PHP上传。更多关于html的问题详细请看本专题下面的文章。php中文网欢迎大家前来学习。

2023.11.03

3591

9

PHP出现乱码怎么解决
PHP出现乱码怎么解决

PHP出现乱码可以通过修改PHP文件头部的字符编码设置、检查PHP文件的编码格式、检查数据库连接设置和检查HTML页面的字符编码设置来解决。更多关于php乱码的问题详情请看本专题下面的文章。php中文网欢迎大家前来学习。

2023.11.09

5117

8

php文件怎么在手机上打开
php文件怎么在手机上打开

php文件在手机上打开需要在手机上搭建一个能够运行php的服务器环境,并将php文件上传到服务器上。再在手机上的浏览器中输入服务器的IP地址或域名,加上php文件的路径,即可打开php文件并查看其内容。更多关于php相关问题,详情请看本专题下面的文章。php中文网欢迎大家前来学习。

2023.11.13

4022

8

sprintf函数用法详解
sprintf函数用法详解

sprintf函数的用法:1、格式化字符串;2、指定输出宽度和精度;3、返回值。更多关于sprintf函数用法详解的内容,大家可以阅读下面的文章。

2023.11.27

12002

4

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程