ToB企服应用市场:ToB评测及商务社交产业平台

标题: maven命令:clean、compile、package等,联合idea先容(附加,Linux运行封 [打印本页]

作者: 北冰洋以北    时间: 2024-8-30 01:11
标题: maven命令:clean、compile、package等,联合idea先容(附加,Linux运行封
目录
一、maven先容
二、idea中设置maven
三、maven命令使用
mvn clean:
mvn compile:
mvn package:
mvn install:
mvn deploy:
mvn test:
四、Linux运行封装的jar包

   本文主要内容为:涉及maven的学习,maven的基本先容,idea下的maven底子设置,pom文件初始化内容寄义,以及怎样使用maven命令,再进行衍生,怎样在linux系统上启动运行封装好的jar包。
  一、maven先容

随着越来越多的框架,项目中的jar包越来越多,需要下载jar包,放在当前工程指定位置,通过maven可以管理项目,依赖对应的jar包可以主动下载。使用maven可以主动化构建、测试、打包和发布项目。在依赖中,包含:
groupID:公司业务线名
artifactID:产品线名-模块名
version:版本号
如引入log4j2时候有以下依赖坐标:
  1. <dependency>
  2.     <groupId>org.apache.logging.log4j</groupId>
  3.     <artifactId>log4j-core</artifactId>
  4.     <version>2.12.1</version>
  5. </dependency>
复制代码
此中,版本号一样平常包罗:主版本号.次版本号.修订号
eg:初始1.0.0 -> 修改bug 1.0.1 -> 功能调整 1.1.1
主版本号一样平常在修改了产品方向的新功能修改,次版本号在新增类、接口时修改。
二、idea中设置maven

maven安装比较简单,直接官网下载安装就行。对于maven的设置,主要包罗:选择maven安装路径,配置私服steeings.xml,设置项目jar包存放路径。

当创建好maven项目后,在默认pom坐标中,有以下代码,详细释义如下:
在上图的行号9后,通过<packaging>jar</packaging>,可以设置当前项目打jar包,web工程需要打war包。
maven基本设置先容完了,那么怎样得到坐标呢?
可以通过https://mvnrepository.com/查询常用jar包依赖。serarch后,点击所需要的jar包,建议选择使用量较多的版本号,则可以得到jar包的依赖坐标。在pom中<dependencies>标签下导入所需要的坐标。

三、maven命令使用

在idea中,点击右侧maven,打开Lifecycle,可以看到很多maven的常用命令。

以下就各个常用的命令进行先容。
mvn clean:

整理编译或打包后的项目布局,也就是会把target文件删除。
mvn compile:

编译项目,天生target文件,将当前项目中的字节类,编译为字节码文件。

mvn compile只能编译核心步伐,如果要编译测试步伐,需要使用mvn test-compile
mvn package:

打包项目,天生jar或war文件,需要留意test代码必须都通过,否则会打包失败。项目默认时,是天生jar包,最终天生如下箭头所示:

打包成war包过程中,可能会报错“import: Enty[import from realm ClassRealm[maven. api, parent: null]]”,这是由于war包打包插件和jdk版本不匹配:pom.xml中添加以下代码即可。
  1. <build>
  2.     <plugins>
  3.         <plugin>
  4.             <groupId>org.apache.maven.plugins</groupId>
  5.             <artifactId>maven-war-plugin</artifactId>
  6.             <version>3.2.2</version>
  7.         </plugin>
  8.     </plugins>
  9. </build>
复制代码
mvn install:

打包后上传到maven本地仓库。安装后,其他本地项目可以<dependency>引入mvn package打包好的jar包。
本地仓库:末节“二、idea中设置maven”下,设置的maven依赖存储路径。
mvn deploy:

只打包,上传到maven私服仓库。
mvn test:

执行测试源码,会在target文件夹下天生test-classes文件夹。留意:该定名会执行test文件,并给出陈诉,此中,陈诉在surefire-reports文件夹下。

在maven工程中,test文件下,主要是用于单测的誊写,此中需要留意:

四、Linux运行封装的jar包

当存在springboot项目时,代码中包罗@SpringBootApplication及其启动类。按住键盘ctrl,通过mvn clean、mvn package封装当前项目为jar包。

依赖于Linux系统的开源性、安全性、稳定性、灵活性以及低本钱,项目代码是基于Linux系统运行的。
此时,在堡垒机中,需要先将jar包上传到指定文件夹下。假设需要上传到/export/servers/jdk-1.6.0_25/lib/目录下,Linux命令为:
  1. scp /path/to/your/local/jarfile.jar username@linux_server_ip:/home/export/servers/jdk-1.8.0_201/lib/
复制代码
当jar包被赋予可执行权限后,才可以在Linux直接运行:
  1. chmod +x jarfile.jar
复制代码
在堡垒机中,存在多个运行历程,此时,读者的功能是对当前Java历程进行扫描(读者如不需要可直接运行java -jar jarfile.jar)。
查询本机Java历程命令为:
  1. ps -ef | grep java
复制代码
假设得到历程号为126。在SpringBootApplication启动类中,如果存在需要的输出内容,这时可以将打印写入到指定“applicationOut.log”文件夹:
  1. java -Djava.ext.dirs=/home/export/servers/jdk-1.6.0_25/lib/
  2. -server -jar jarfile.jar 126 > applicationOut.log 2>&1 &
复制代码
以上是maven的整篇文章,可以实现对maven常见命令的基本熟悉。运行jar包末节作为参考,代码已在Liunx系统上运行过,功能需求可能有不同,可供参考。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4