maven_01_简介及安装

本文详细介绍Maven在Java项目构建、依赖管理及信息管理中的应用。覆盖Maven的安装配置,包括JDK检查、环境变量设定、HTTP代理配置;解析Maven目录结构与工作原理;分享最佳实践如MAVEN_OPTS设置、用户范围settings.xml配置,及为何避免使用IDE内置Maven。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、简介

Maven主要服务于基于Java平台的项目构建依赖管理项目信息管理

  • 何为构建

除了编写源代码,我们每天有相当一部分时间花在了编译、运行单元测试、生成文档、打包和部署等烦琐且不起眼的工作上,这就是构建

二、安装

1.检查JDK安装

执行如下命令,检查JDK的安装情况

echo %JAVA_HOME%

java -version

2.maven安装

(1)去官网下载maven,解压,

(2)然后设置环境变量(建议设置用户环境变量)

M2_HOME=C:\dev-env\Maven\apache-maven-3.5.4
PATH=%M2_HOME%\bin

(3)验证

echo %M2_HOME%

mvn -v

三、基础知识

1.安装目录分析

Maven安装目录

目录分析
bin(1)该目录包含了mvn运行的脚本,(2)这些脚本用来配置Java命令,准备好classpath和相关的Java系统属性,然后执行Java命令。
boot包含一个类加载器框架:plexus-classworlds-2.5.2.jar
conf(1)包含一个全局配置文件 settings.xml ,(2)一般情况下,推荐将该文件复制到 ~/.m2/ 目录下,然后修改该文件,在用户范围定制Maven的行为。
lib包含所有maven运行时需要的Java类库

2.设置HTTP代理

若想使Maven通过代理服务器来下载jar包,则需要为Maven配置HTTP代理

2.1 确认代理服务器畅通

telnet ip 端口

如果telnet连接正确,则输入ctrl+],然后q,回车,退出即可。

2.2 修改用户配置

检查完毕之后,编辑 ~/.m2/settings.xml 文件(如果没有该文件,则复制 $M2_HOME/conf/settings.xml )。

添加代理配置如下:

<settings >
...
  <proxies>        
    <proxy>
      <id>my-proxy</id>
      <active>true</active>
      <protocol>http</protocol>
      <host>192.168.12.107</host>
      <port>3128</port>
      <!-- 
      <username>proxyuser</username>
      <password>proxypass</password>     
      <nonProxyHosts>local.net|some.host.com</nonProxyHosts>
      -->
    </proxy>
  </proxies>
...
</settings>
  • 当代理服务需要认证时,就需要配置username和password。
  • nonProxyHost元素用来指定哪些主机名不需要代理,可以使用“|”符号来分隔多个主机名。且可使用通配符 *

四、最佳实践

1.设置MAVEN_OPTS环境变量

运行mvn命令实际上是执行了Java命令,通过 MAVEN_OPTS 可设置 jvm参数。

通常需要设置MAVEN_OPTS的值为-Xms128m-Xmx512m,

因为Java默认的最大可用内存往往不能够满足Maven运行的需要,比如在项目较大时,使用Maven生成项目站点需要占用大量的内存,如果没有该配置,则很容易得到java.lang.OutOfMemeoryError。因此,一开始就配置该变量是推荐的做法。

2.配置用户范围settings.xml

配置文件适用范围描述
$M2_HOME/conf/settings.xml全局范围整台机器上的所有用户都会直接受到该配置的影响
~/.m2/settings.xml用户范围只有当前用户才会受到该配置的影响

推荐使用用户范围的settings.xml,主要是:

  • 避免无意识地影响到系统中的其他用户
  • 方便Maven版本升级

3.不要使用IDE内嵌的Maven

原因:

  • 版本新,可能不稳定
  • 与命令行的maven不一致

因此,应该在IDE中配置Maven插件时使用与命令行一致的Maven。

内容概要:该研究通过在黑龙江省某示范村进行24小时实地测试,比较了燃煤炉具与自动/手动进料生物质炉具的污染物排放特征。结果显示,生物质炉具相比燃煤炉具显著降低了PM2.5、CO和SO2的排放(自动进料分别降低41.2%、54.3%、40.0%;手动进料降低35.3%、22.1%、20.0%),但NOx排放未降低甚至有所增加。研究还发现,经济性和便利性是影响生物质炉具推广的重要因素。该研究不仅提供了实际排放数据支持,还通过Python代码详细复现了排放特征比较、减排效果计算和结果可视化,进一步探讨了燃料性质、动态排放特征、碳平衡计算以及政策建议。 适合人群:从事环境科学研究的学者、政府环保部门工作人员、能源政策制定者、关注农村能源转型的社会人士。 使用场景及目标:①评估生物质炉具在农村地区的推广潜力;②为政策制定者提供科学依据,优化补贴政策;③帮助研究人员深入了解生物质炉具的排放特征和技术改进方向;④为企业研发更高效的生物质炉具提供参考。 其他说明:该研究通过大量数据分析和模拟,揭示了生物质炉具在实际应用中的优点和挑战,特别是NOx排放增加的问题。研究还提出了多项具体的技术改进方向和政策建议,如优化进料方式、提高热效率、建设本地颗粒厂等,为生物质炉具的广泛推广提供了可行路径。此外,研究还开发了一个智能政策建议生成系统,可以根据不同地区的特征定制化生成政策建议,为农村能源转型提供了有力支持。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值