当前位置: 首页 > news >正文

手机网站开发免费视频教程上海缪斯设计公司的主题文化

手机网站开发免费视频教程,上海缪斯设计公司的主题文化,如何恢复wordpress主题初始内容,ui设计哪家培训班好目标 在Windows操作系统上使用Jenkins完成代码的自动拉取、编译、打包、发布工作。 实施 1.安装Java开发工具包(JDK) Jenkins是基于Java的应用程序,因此需要先安装JDK。可以从Oracle官网或OpenJDK下载适合的JDK版本。推荐java17版本&#x…

目标

在Windows操作系统上使用Jenkins完成代码的自动拉取、编译、打包、发布工作。

实施

1.安装Java开发工具包(JDK)

Jenkins是基于Java的应用程序,因此需要先安装JDK。可以从Oracle官网或OpenJDK下载适合的JDK版本。推荐java17版本,因为Jenkins依赖高版本的jdk。

安装包下载地址:

Java Downloads | Oracle 中国

2.下载并安装Jenkins

访问Jenkins官方网站,下载最新的Windows安装包。运行安装程序,按照提示完成安装。

安装包下载地址:

Jenkins 的安装和设置

安装教程(文章内容比较多,看安装部分的内容):

Windows下Jenkins软件安装说明及配置_windows jenkins配置文件在哪里-CSDN博客

3.访问Jenkins

访问地址:服务器ip+配置的端口(安装过程中自己配置的端口号)

4.配置Jenkins

配置maven,用于程序打包

配置jdk,Jenkins依赖jdk运行(版本不能太低,最好是jdk17)

配置maven安装路径

基础配置完成。

5新建任务

创建maven项目

保存后,自动跳转到配置页面。

选择参数化构建,本地使用的是SVN源码管理工具,用branch分支作为参数,选择List XXX

配置参数化数据源(branch列表)

配置svn账号

配置svn用户名和密码 

排序规则选择

配置代码来源 

test 所在位置如下图所示,用来在打包时动态替换配置文件的,比如测试环境需要测试的配置文件,开发环境需要开发的配置文件,那么在发布测试版本时,就用如下的配置方式来激活测试配置文件。 在文章末尾,有完整的pom文件内容,供参考。

maven打包完成后,把war包放到Tomcat对应的webapps目录中,完成项目部署,这个步骤用脚本实现。

编写脚本,完成部署

脚本的内容根据实际需要进行编写,需要做什么操作,就写对应操作的shell脚本。

以上配置完成,进行项目构建。

6.构建项目

找打前面已经创建的任务,点击参数化构建

此时就可以看到所有的branch版本,选择需要的版本,然后点击构建。 

剩下的就是等着就可以了,等待构建完毕,整个部署动作就完成了。

点击对应的构建编号,可以看具体执行过程。

当看到success,表示构建完成。 

通过以上步骤,可以在Windows平台上成功搭建并配置Jenkins,实现自动化构建和部署。

问题及其处理方案:

1.本地包的引用

Jenkins构建时,出现如下报错:

包缺失问题,这些是本地jar包(jar包文件放在项目的lib目录中,项目结构如下图),不是从maven仓库拉取。解决方法是在pom文件中加载本地文件。

修改pom.xml,把缺失的包都引用上。 

<dependency><groupId>com.sheca</groupId><artifactId>words</artifactId><version>1.6</version><scope>system</scope><systemPath>${project.basedir}/web/WEB-INF/lib/aspose-words-15.8.0-jdk16.jar</systemPath>
</dependency>

 ${project.basedir} 表示项目的根目录。

2.版本冲突

Jenkins构建时,报错:程序包javax.xml.bind.annotation不存在

AI给出的错误原因:这些错误表明你的项目在编译时找不到 javax.xml.bind 包中的类。这通常是因为在 Java 9 及更高版本中,javax.xml.bind(JAXB)不再是 Java SE 的一部分,需要手动添加依赖。

因为Jenkins配置的jdk版本为jdk17。maven打包时,当前java项目依赖的jdk版本为jdk8,两个版本会冲突,解决方法:

修改pom.xml文件,在进行maven打包时,使用jdk8:

<plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><version>3.1</version><configuration><source>1.8</source><target>1.8</target><fork>true</fork><executable>C:\Program Files\Java\jdk1.8.0_191\bin\javac</executable>  <!-- 指定JDK路径--></configuration>
</plugin>

3.权限问题

Jenkins构建时,出现如下报错:

解决方法:Jenkins服务配置为管理员账号运行

在服务中找到Jenkins,然后找到‘登录’,选择‘此账号’,点击浏览,输入administrator,自动会加载管理员账号,然后输入密码,点击确定。

重启一下Jenkins服务。

4.开发和测试环境配置文件不同的问题

情况一:整个文件替换

在打包时,利用maven的profiles配置,可以做到动态引用配置文件,假如当前需要在打包时,动态引用测试配置文件,具体操作如下:

a.先在系统的resources/test目录中,把测试配置文件放进去。如下图:

项目中放置两份配置文件,pom.xml中添加如下配置:

  <!--Jenkins打测试war包时使用测试的配置文件-->
    <profiles>
       <profile>
           <id>test</id>
           <build>
               <resources>
                   <resource>
                       <directory>resources/test</directory>
                       <filtering>true</filtering>  <!-- 关键配置 -->
                       <includes>
                           <include>properties.config</include>
                           <include>log4j2.xml</include>
                           <include>quartz_jobs.xml</include>
                       </includes>
                   </resource>
               </resources>
           </build>
       </profile>
   </profiles>

Jenkins的任务配置中,在执行打包命令时,激活上面ID为test的配置,如下图:

-Ptest 表示激活pom.xml中ID=test的配置。

情况二:文件中局部内容替换

如果只是想在打包时,替换文件中的部分内容,比如数据库链接。

在pom.xml文件中引入专门替换字符串的打包插件replacer,完整配置如下:

<!-- jenkins 在maven打包时 动态替换数据库连接 -->
<plugin><groupId>com.google.code.maven-replacer-plugin</groupId><artifactId>replacer</artifactId><version>1.5.0</version><executions><execution><phase>prepare-package</phase><goals><goal>replace</goal></goals></execution></executions><configuration><file>resources/data.config</file><replacements><replacement><token>aaa</token><value>bbb</value></replacement></replacements></configuration>
</plugin>

上面的这段配置,表示将resources/data.config文件中的字符串aaa,在打包时,替换为字符串bbb。

通过以上两种方式,可以做到动态替换不同环境的配置。

5.pom.xml文件示例

<?xml version="1.0" encoding="UTF-8"?>
<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>groupId</groupId><artifactId>MBXM</artifactId><version>1.2-RELEASE</version><packaging>war</packaging><properties><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding><java.version>1.8</java.version><skipTests>true</skipTests><tomcat.version>8.5.75</tomcat.version><maven.compiler.source>8</maven.compiler.source><maven.compiler.target>8</maven.compiler.target><log4j2.version>2.17.1</log4j2.version></properties><dependencies><dependency><groupId>org.apache.xmlbeans</groupId><artifactId>xmlbeans</artifactId><version>3.0.0</version></dependency><!--本地包--><dependency><groupId>com.sheca</groupId><artifactId>pdf</artifactId><version>1.6</version><scope>system</scope><systemPath>${project.basedir}/web/WEB-INF/lib/aspose.pdf-17.3.0.jar</systemPath></dependency></dependencies><build><plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><version>3.1</version><configuration><source>${java.version}</source><target>${java.version}</target><fork>true</fork><executable>C:\Program Files\Java\jdk1.8.0_191\bin\javac</executable>  <!-- 指定JDK路径--></configuration></plugin><!-- war包的信息--><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-war-plugin</artifactId><version>3.3.1</version><configuration><warName>ZJZF</warName><webXml>web/WEB-INF/web.xml</webXml><!--<packagingExcludes>web/WEB-INF/web.xml,WEB-INF/lib/javax.servlet-api-3.1.0.jar</packagingExcludes>--><warSourceDirectory>web</warSourceDirectory></configuration></plugin><!-- jenkins 在maven打包时 动态替换数据库连接 --><plugin><groupId>com.google.code.maven-replacer-plugin</groupId><artifactId>replacer</artifactId><version>1.5.0</version><executions><execution><phase>prepare-package</phase><goals><goal>replace</goal></goals></execution></executions><configuration><file>resources/Inter.HTTPHandler.Core.URLMapSetting.config</file><replacements><replacement><token>Data Source=jdbc:oracle:thin:@123/orcl;User ID=a;Password=a;</token><value>Data Source=jdbc:oracle:thin:@456/orcl;User ID=b;Password=b;</value></replacement></replacements></configuration></plugin></plugins><sourceDirectory>src</sourceDirectory><resources><resource><directory>resources</directory><filtering>false</filtering><excludes><exclude>test/**</exclude>  <!-- 排除测试配置 --></excludes></resource></resources><testResources><testResource><directory>src/Test</directory></testResource></testResources></build><!--Jenkins打测试war包时使用测试的配置文件--><profiles><profile><id>test</id><build><resources><resource><directory>resources/test</directory><filtering>true</filtering>  <!-- 关键配置 --><includes><include>properties.config</include><include>log4j2.xml</include><include>quartz_jobs.xml</include></includes></resource></resources></build></profile></profiles></project>

项目整体文件解构,如下图:

http://www.dtcms.com/a/469064.html

相关文章:

  • 网站设计机构培训网站过期原因
  • 南通seo网站排名优化淳安县建设网站
  • 北京网站建设公司怎么排版wordpress更换主题方法
  • 德国 网站后缀论坛网站开发文档
  • 曲靖网站开发公司游戏推广对接平台
  • 单位建设网站申请报告四川省建设厅网站为什么打不开
  • 网站做有偿广告需要什么有序描述一下网站建设的基本流程图
  • 威海网站制作服装网站建设需求分析报告
  • 建筑设计资料网站如何在网上卖货
  • 做电影网站要不要收费html空白模板下载
  • 进入网站服务器怎么做什么网站可以做数据调查问卷
  • 苏州市网站优化洛阳市河阳建设工程有限公司网站
  • 郑州网站推广公司咨询昵图设计师服务平台
  • 如何做话费卡回收网站数据分析培训
  • wordpress中文下载站重庆旅游网站建设公司
  • 服务器网站崩溃深圳最穷的三个区
  • 网站安全建设方案总结室内设计平台接单
  • 做异形建筑的网站广东网站备案查询系统
  • 飞鱼网站建设wordpress图片弹出
  • 常州快速建站模板什么网站免费做简历
  • angularjs网站开发实例网站建设和推广的完整话术
  • 东莞快速建站平台杨和网站建设
  • 住房和城乡建设部网站加装电梯网站做百度推广划算吗
  • 手机端网站建设广告词做外贸的网站主要有哪些
  • 青岛制作企业网站的公司二手车做网站的目的
  • 做本地信息网站要注册什么类型公司pc网站转换手机网站代码
  • 网站怎样和首页做链接地址景区网站的建设公司
  • 合肥建网站要多少钱淘宝怎么开店铺卖货
  • 石家庄手机网站制作多少钱做网站的 视频
  • xp配置网站服务器沧州高端网站建设