Java如何实现Jenkins 本地部署?
🏆本文收录于「滚雪球学SpringBoot」专栏,专业攻坚指数级提升持续更新中,up!up!up!!欢迎点赞&&收藏&&订阅。
@TOC
🚀 前言
Jenkins 是一款流行的开源自动化服务器,可以用于持续集成 (CI) 和持续交付/部署 (CD/CD) 的实现。通过 Jenkins,可以自动化地构建、测试、部署 Java 应用程序。
以下是使用 Java 在本地部署 Jenkins 的完整步骤。
✨ 1. 环境准备
1.1 安装 JDK
-
确保你的系统已安装 Java JDK(Jenkins 需要 Java 运行环境)。
-
检查 Java 版本:
java -version
Jenkins 推荐使用 JDK 8 或 11。
-
如果未安装,请前往 Oracle JDK 下载页面 或使用 OpenJDK。
- 安装后,配置
JAVA_HOME
和PATH
环境变量。
- 安装后,配置
1.2 下载 Jenkins
- 前往 Jenkins 官方下载页面:https://www.jenkins.io/download/。
- 下载适用于你系统的 Jenkins .war 文件(独立运行模式)。
🌟 2. 启动 Jenkins
2.1 运行 Jenkins
- 打开终端或命令行,进入下载的
.war
文件所在的目录。 - 使用以下命令启动 Jenkins:
java -jar jenkins.war
- Jenkins 默认在本地
8080
端口运行。如果需要使用其他端口,可以指定:java -jar jenkins.war --httpPort=9090
2.2 查看启动日志
Jenkins 启动时会生成一段日志,类似如下:
*************************************************************
Jenkins initial setup is required. An admin user has been created and a password has been written to the log.
Please use the following password to proceed to installation:
abcd1234efgh5678ijklmnop
*************************************************************
记下 初始管理员密码,后续需要用到。
2.3 访问 Jenkins
打开浏览器,访问:
http://localhost:8080
页面提示输入初始密码,填写启动日志中的密码后,进入 Jenkins 安装向导。
🛠️ 3. 配置 Jenkins
3.1 安装推荐的插件
在 Jenkins 安装向导中,选择:
- Install suggested plugins(推荐插件安装)
- Jenkins 会自动安装一些常用插件,如:
- Git
- Pipeline
- Maven Integration
- SSH
3.2 创建管理员用户
根据提示创建一个管理员账户,输入用户名、密码和邮箱地址。完成后,进入 Jenkins 主界面。
🌐 4. 配置 Java 构建环境
4.1 安装 Java 插件
- 在 Jenkins 主界面,点击 Manage Jenkins -> Plugin Manager。
- 在 Available 标签中搜索
Java
。 - 安装以下插件:
- Java Development Kit Plugin (JDK 插件)
- Maven Integration Plugin (用于支持 Maven 构建)
4.2 配置 JDK
- 在 Manage Jenkins -> Global Tool Configuration 中,找到 JDK。
- 添加 JDK 安装路径:
- 勾选 Install automatically(或手动填写
JAVA_HOME
)。 - 如果选择自动安装,需要网络连接。
- 勾选 Install automatically(或手动填写
⚙️ 5. 创建一个简单的 Java 构建项目
5.1 准备 Java 项目
确保你有一个简单的 Java 项目,使用 Maven 构建。以下是一个简单的 Maven 项目结构:
my-java-app
├── src
│ └── main
│ └── java
│ └── com.example
│ └── App.java
├── pom.xml
App.java
示例代码:
package com.example;
public class App {
public static void main(String[] args) {
System.out.println("Hello, Jenkins!");
}
}
pom.xml
示例配置:
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.example</groupId>
<artifactId>my-java-app</artifactId>
<version>1.0-SNAPSHOT</version>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
</plugins>
</build>
</project>
5.2 创建 Jenkins 项目
-
返回 Jenkins 主界面,点击 New Item。
-
输入项目名称(如
MyJavaApp
),选择 Freestyle project,点击 OK。 -
在项目配置页面:
- 源码管理:
- 选择 Git,并填写项目的 Git 仓库 URL。
- 如果是本地项目,可以在命令行初始化一个 Git 仓库并提交:
git init git add . git commit -m "Initial commit"
- 构建触发器:
- 勾选 Build periodically(定时构建),使用 Cron 表达式(如
H/5 * * * *
每 5 分钟触发一次)。
- 勾选 Build periodically(定时构建),使用 Cron 表达式(如
- 构建环境:
- 勾选 Provide Node & npm bin/ folder to PATH,设置运行环境。
- 构建步骤:
- 点击 Add build step,选择 Invoke top-level Maven targets。
- 填写 Goals 为
clean package
。
- 源码管理:
-
保存配置。
🔧 6. 构建和查看结果
- 点击项目页面中的 Build Now,触发构建。
- 构建完成后,点击 Build History 中的最新构建,查看控制台输出:
[INFO] --- maven-compiler-plugin:3.8.1:compile (default-compile) @ my-java-app --- [INFO] --- maven-jar-plugin:3.1.0:jar (default-jar) @ my-java-app --- [INFO] Building jar: /var/jenkins_home/workspace/MyJavaApp/target/my-java-app-1.0-SNAPSHOT.jar [INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS
- 如果看到
BUILD SUCCESS
,说明项目构建成功。
🌐 7. 扩展:添加持续部署
如果你希望将构建的 .jar
文件部署到服务器,可以配置以下步骤:
7.1 添加部署插件
-
安装 Publish Over SSH Plugin:
- 在 Plugin Manager 中搜索
Publish Over SSH
。 - 安装完成后,重启 Jenkins。
- 在 Plugin Manager 中搜索
-
在 Manage Jenkins -> Configure System 中,配置 SSH 服务器。
7.2 部署步骤
- 在项目配置中,添加构建后操作:
- 点击 Add post-build action。
- 选择 Send build artifacts over SSH。
- 配置将生成的
.jar
文件上传到目标服务器路径。
✨ 总结
通过上述步骤,你已经成功在本地部署了 Jenkins,并完成了一个 Java 项目的自动化构建。如果需要更复杂的功能,比如集成测试、代码分析、自动化部署等,可以借助 Jenkins 的强大插件生态进一步扩展。
祝你在持续集成之路越走越远!🚀 有任何问题,欢迎随时讨论!👋
🧧福利赠与你🧧
无论你是计算机专业的学生,还是对编程有兴趣的小伙伴,都建议直接毫无顾忌的学习此专栏「滚雪球学SpringBoot」,bug菌郑重承诺,凡是学习此专栏的同学,均能获取到所需的知识和技能,全网最快速入门SpringBoot,就像滚雪球一样,越滚越大, 无边无际,指数级提升。
最后,如果这篇文章对你有所帮助,帮忙给作者来个一键三连,关注、点赞、收藏,您的支持就是我坚持写作最大的动力。
同时欢迎大家关注公众号:「猿圈奇妙屋」 ,以便学习更多同类型的技术文章,免费白嫖最新BAT互联网公司面试题、4000G pdf电子书籍、简历模板、技术文章Markdown文档等海量资料。
✨️ Who am I?
我是bug菌,CSDN | 掘金 | InfoQ | 51CTO | 华为云 | 阿里云 | 腾讯云 等社区博客专家,C站博客之星Top30,华为云2023年度十佳博主,掘金多年度人气作者Top40,掘金等各大社区平台签约作者,51CTO年度博主Top12,掘金/InfoQ/51CTO等社区优质创作者;全网粉丝合计 30w+;更多精彩福利点击这里;硬核微信公众号「猿圈奇妙屋」,欢迎你的加入!免费白嫖最新BAT互联网公司面试真题、4000G PDF电子书籍、简历模板等海量资料,你想要的我都有,关键是你不来拿。
-End-
- 点赞
- 收藏
- 关注作者
评论(0)