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

聊城做网站的公司行情东阳住房和城市建设网站

聊城做网站的公司行情,东阳住房和城市建设网站,泰州模板自助建站,wordpress pdf插件下载1 概述 编写Java代码之后,需要经过编译、打包字节码、打包源码、生成文档之类的操作,这些操作里面的涉及到各种各样的工具和参数配置,这里仅介绍最基础的。 建议这块能够简单就尽量简单,平时开发大部分的时间都会聚焦在开发业务…

1 概述

编写Java代码之后,需要经过编译、打包字节码、打包源码、生成文档之类的操作,这些操作里面的涉及到各种各样的工具和参数配置,这里仅介绍最基础的。

建议这块能够简单就尽量简单,平时开发大部分的时间都会聚焦在开发业务功能上,这些编译打包相关的配置其实很少人会去搞懂它,经过一段时间人员的变换,可能里面的知识很容易就丢失掉了。如果配置过于复杂,做很多特殊的事情,那么如果出了问题或者需要调整,由于没多少人懂,那么维护起来就比较困难。

所以总体的原则是简单到够用即可,能不用那些复杂的用法就尽量不用。

2 编译打包

2.1 maven插件编译

这里介绍的是maven工具,如果用gradle的则可以出门找找gradle的说明。

先看看maven提供的编译插件:

<properties><java.version>1.8</java.version>
</properties>
<build><plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><configuration><source>${java.version}</source><target>${java.version}</target></configuration></plugin></plugins>
</build>

Maven提供的插件是maven-compiler-plugin,在<configuration>里可以做比较复杂的配置,这里只是指定了jdk的版本,用此版本的jdk进行编译。上面配置同样没有提供版本号,有了以前的经验,可以猜测应该也是在spring-boot-starter-parent里提供的:

https://repo.maven.apache.org/maven2/org/springframework/boot/spring-boot-dependencies/2.7.18/spring-boot-dependencies-2.7.18.pom

<properties><maven-compiler-plugin.version>3.10.1</maven-compiler-plugin.version>
</properties>
<build><pluginManagement><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><version>${maven-compiler-plugin.version}</version></plugin></pluginManagement>
</build>

 注意:这个依赖是在<pluginManagement>节点里管理的,并不是在<dependencyManagement>节点里,说明的<plugin>依赖和<dependency>依赖是分开的,不能共用。

用这个插件打出的包里面的结构大致是:

srvpro-1.0.0-SNAPSHOT.jar- com/qqian/stepfmk  // 代码的包目录- META-INF - maven/com/qqian/stepfmk // 里面放的是pom.xml相关文件- pom.properties- pom.xmlMANIFEST.MF- application.properties // resources目录下的配置文件- logback.xml // resources目录下的配置文件

从上面看出,这是一个普通的jar包,插件主要是把代码编译后放到根目录下,resources目录下的配置文件也放到根目录下,还生成了一个META-INF目录,里面放MANIFEST.MF说明文件和工程的pom.xml相关文件。这种jar是不能通过java -jar来启动的。

2.2 springboot插件编译

Springboot也提供了相关的插件:

<build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin></plugins>
</build>

插件spring-boot-maven-plugin是带spring-boot前缀的,同样没有提供版本,还得到spring-boot-starter-parent的依赖去找:

https://repo.maven.apache.org/maven2/org/springframework/boot/spring-boot-dependencies/2.7.18/spring-boot-dependencies-2.7.18.pom

<build><pluginManagement><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><version>2.7.18</version></plugin></pluginManagement>
</build>

 从上面看出,版本是硬编码的,和springboot保持同样的版本。如果同时配置了maven-compiler-plugin和spring-boot-maven-plugin插件,以spring-boot-maven-plugin为优先。

用这个插件打出的包里面的结构大致是:

srvpro-1.0.0-SNAPSHOT.jar- BOOT-INF // 如果是war包则名称变为WEB-INF- classes- com/qqian/stepfmk  // 代码的包目录- application.properties // resources目录下的配置文件- logback.xml // resources目录下的配置文件- lib // 所有依赖的jar- classpath.idx // jar加入到classpath的顺序- layers.idx // 用于帮助构建docker镜像- META-INF- maven/com/qqian/stepfmk // 里面放的是pom.xml相关文件- pom.properties- pom.xml- MANIFEST.MF- org/springframework/boot/loader // springboot加载器

从上面看出,这是一个把所有依赖包都打包在一起的包,还有loader,专门是为了执行jar/war包服务的。目前前后端分离是主流,就基本没有jsp和静态文件了,所以一般使用jar即可,如果有jsp和静态文件则只能选用war包。不管是jar包还是war包,都不需要变插件的配置。

2.3 源码包和文档

在某些情况下,还需要打源码包和文档,则可以加上下面配置:

<build><plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-source-plugin</artifactId><executions><execution><phase>deploy</phase><goals><goal>jar</goal></goals></execution></executions></plugin><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-javadoc-plugin</artifactId><executions><execution><phase>deploy</phase><goals><goal>jar</goal></goals></execution></executions></plugin></plugins>
</build>

其中,maven-source-plugin插件会多打出一个xxx-sources.jar的包,里面包含源码和配置文件;

maven-javadoc-plugin则会多打出一个xxx-javadoc.jar的包,里面包含把所有类里用/** */注释的内容生成html文档。

里面配置的,如果是希望在编译的时候就打包,则phase是install,如果是在发布之后打包,则phase是deploy,也可以换成maven的其它phase。

3 架构一小步

采用jar的方式,利用springboot的插件,使得配置简单;把字节码和源码都打包,这样源码包和字节码包可以保持同版本,一起备份起来,后面特殊情况下可以用源码重新打包,有客户需要源码的时候,则可以直接提供:

<groupId>com.qqian.stepfmk</groupId>
<artifactId>srvpro</artifactId>
<version>1.0.0-SNAPSHOT</version>
<packaging>jar</packaging><build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-source-plugin</artifactId><executions><execution><phase>deploy</phase><goals><goal>jar</goal></goals></execution></executions></plugin></plugins>
</build>

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

相关文章:

  • 工业信息化部网站备案查询网站建设的想法
  • wordpress调用排序从大到小seo咨询师
  • 司局网站维护廉政风险建设长治做百度网站一年多少钱
  • 王欣网站建设与维护上海商地网站建设公司
  • 网站网站开发者犯法吗html登录注册页面代码
  • 一般做网站要多少钱.ai域名注册网站
  • 拍拍网站源码网站设计制作开发公司
  • 网站域名com和cn的差别在哪里加工订单网
  • 网站怎么做动态切图连云港seo
  • 昆明做网站找启搜网络wordpress导航栏透明
  • 哪个网站是做韩国化妆品正品市场营销模式有哪些
  • 专业单位网站设计企业58同城类似的网站怎么做
  • 天津seo网站管理抖音代运营方案计划书
  • php众筹网站程序源码静态网站建设的主要技术
  • 邢台建站详情页设计 制作
  • 网站建设数据库怎么传送优秀的网页网站设计
  • 网站内容设计遵循的原则有网站注册地址
  • 医疗机械网站怎么做wordpress深度开发
  • 外汇申报在哪个网站上做做众筹的网站有几个
  • 山西省建设厅网站官网仿团购网站模板
  • ps彩屏做的好的网站企业网站建设的基本原则有哪些?
  • 南阳网站开发网站建设费放什么科目
  • 网站开发建设公司电话公司网页如何建立
  • 情侣做记录网站源码全网营销和网站建设
  • 可以做外链的网站平台延庆网站制作
  • 深圳市盐田区住房和建设局网站电商网站制作
  • 网站后台注入wordpress用什么服务器
  • 网站源码建站磁力天堂
  • 做的比较好的二手交易网站有哪些网站建设开票
  • 郑州做供暖的公司网站电商网站的银行支付接入该怎么做