Ubuntu环境下使用Maven编译并打包Java项目
一、安装Maven
打开终端输入以下指令:
1 $ mvn -v 2 3 Apache Maven 3.3.9 4 Maven home: /usr/share/maven 5 Java version: 1.8.0_181, vendor: Oracle Corporation 6 Java home: /usr/lib/jvm/java-8-oracle/jre 7 Default locale: zh_CN, platform encoding: UTF-8 8 OS name: "linux", version: "4.4.0-36-generic", arch: "amd64", family: "unix"
若系统内有Maven则会显示当前Maven的版本和Java的版本。
若没有安装Java或者安装Java的版本和种类(注意:openjdk和oracle是两种Java jdk,切忌搞混)不对,则需要到通过:
1 $ sudo apt-get install XXXXX
或者官网下载对应的tar.gz包来安装。
若没有安装Maven,则下载:
然后执行一下步骤:
1、解压到HOME对应的用户目录下(也可以解压到其他系统目录,但是HOME目录下权限需求低,操作更加方便)
1 $ tar zxvf apache-maven-3.3.9.bin.tar.gz -C ~
2、在/etc/profile下添加环境变量
建立Maven的HOME目录变量:
1 $ export M2_HOME=/home/username/apache-maven-3.3.9
其中username为home路径下本机用户名。
M2_HOME这个路径可以根据Maven的存放位置而变动。
将Maven的bin目录添加到path路径:
1 $ PATH=$M2_HOME/bin:$PATH
3、重新启动系统,或者在终端下输入以下指令启用环境变量:
1 $ source /etc/profile
4、验证环境变量是否存在:
1 $ echo $M2_HOME 2 3 $ echo $PATH
5、再次验证mvn版本:
1 $ mvn -v
若有需求可以通过以下方法修改Maven本地仓库的位置:
终端内输入以下指令:
1 $ gedit $M2_HOME/conf/settings.xml
打开对应的文本编辑器,通过crtl-f指令定位到localRepository的位置,在其下面添加一行地址即可,例子为:
1 <localRepository>/home/username/Documents/Program/maven_localRepository</localRepository>
这里将本地仓库定位到了home路径下用户名为username中的/Documents/Program/maven_localRepository之中。
不修改配置的话,下载的文件都会保存到本地仓库~/.m2/repositoryMaven中。
二、获取Maven项目
若已有别人的Maven项目,可以直接下载或者git clone到本地即可。
若没有别人的Maven项目,推荐使用IntelliJ IDE来创建Maven项目,对于新手而言方便快捷,可以参考这篇文章:使用Intellij IDE创建Maven项目。
但是很多项目有很复杂的环境以及参数配置,这时候就需要用到Maven命令行创建项目,由于过程复杂,这里便不再介绍。
三、使用Maven编译打包Java项目
打开Maven项目根目录,运行以下指令:
1 $ mvn -U clean package
其中-U参数为强制更新依赖包,clean指令意为清空缓存文件,package指令意为生成target目录,编译、测试代码,生成测试报告,生成jar/war文件。
要把项目部署到生产环境中最好执行这三个指令以避免错误产生。
详细的Maven命令行指令可以参考这篇文章:MAVEN常用命令。
参考文献:
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· SQL Server 内存占用高分析
· .NET Core GC计划阶段(plan_phase)底层原理浅谈
· .NET开发智能桌面机器人:用.NET IoT库编写驱动控制两个屏幕
· 用纯.NET开发并制作一个智能桌面机器人:从.NET IoT入门开始
· 一个超经典 WinForm,WPF 卡死问题的终极反思
· 支付宝事故这事儿,凭什么又是程序员背锅?有没有可能是这样的...
· 在线客服系统 QPS 突破 240/秒,连接数突破 4000,日请求数接近1000万次,.NET 多
· C# 开发工具Visual Studio 介绍
· 在 Windows 10 上实现免密码 SSH 登录
· C#中如何使用异步编程