maven学习01

一、Maven 概念:Maven是一个java语言编写的开源项目管理管理工具,是Apache软件基金会的顶级项目。主要用于项目构建,依赖管理,项目信息管理。百度百科

二、Maven下载

 下载地址:http://maven.apache.org/download.cgi

  

  下载完成后,得到一个压缩包,解压,可以看到maven的组成目录

  

  Maven目录分析

  • bin:含有mvn运行的脚本
  • boot:含有plexus-classworlds类加载器框架
  • conf:含有settings.xml配置文件
  • lib:含有Maven运行时所需要的java类库
  • LICENSE.txt, NOTICE.txt, README.txt针对Maven版本,第三方软件等简要介绍

三、Maven安装

  1、首先要确保电脑上已经安装了JDK(要jdk 1.6+的版本),配置好JDK的环境变量,使用如下的两个命令检查检查JDK安装的情况。

1 Echo %JAVA_HOME%
2 Java -version

  

  2、对apache-maven-3.2.3-bin.zip进行解压缩

  对apache-maven-3.2.3-bin.zip进行解压缩,例如解压到如下目录(解压目录最好不要有中文)

  

  3、设置系统环境变量:MAVEN_HOME

  

  4、设置环境变量Path,将%MAVEN_HOME%\bin加入Path中,一定要注意要用分号;与其他值隔开,如下图所示:

  

  %MAVEN_HOME%\bin代表的就是"E:\apache-maven-3.2.3\bin"目录

  5、验证Maven安装是否成功

  打开cmd窗口

  

  输入"mvn –v"命令 查看Maven的相关信息,如下图所示:

  

  能够出现这样的信息就说明Maven的安装已经成功了。

  6、设置MAVEN_OPTS环境变量(可选配置)

  由于Maven命令实际上是执行了Java命令,所以可以通过JAVA命令参数的方式来设置MAVEN运行参数。MAVEN_OPTS环境变量正是用于此用途

  MAVEN_OPTS

  -Xms128m -Xmx512m,分别设置JVM的最小和最大内存,如下图所示:

  

四、Maven的简单使用

4.1、Maven项目的目录约定

MavenProjectRoot(项目根目录)
   |----src
   |     |----main
   |     |         |----java ——存放项目的.java文件
   |     |         |----resources ——存放项目资源文件,如spring, hibernate配置文件
   |     |----test
   |     |         |----java ——存放所有测试.java文件,如JUnit测试类
   |     |         |----resources ——存放项目资源文件,如spring, hibernate配置文件
   |----target ——项目输出位置
   |----pom.xml ----用于标识该项目是一个Maven项目

4.2、手动创建Maven项目,使用Maven编译

  1、创建项目根文件夹,例如Maven01

  

  2、在Maven01文件夹中创建“pom.xml”文件,如下图所示:

  

  pom.xml文件中的内容如下:

复制代码
 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <project xmlns="http://maven.apache.org/POM/4.0.0" 
 3 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
 4 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
 5 http://maven.apache.org/xsd/maven-4.0.0.xsd">
 6     <!--所有的Maven项目都必须配置这四个配置项-->
 7     <modelVersion>4.0.0</modelVersion>
 8     <!--groupId指的是项目名的项目组,默认就是包名-->
 9     <groupId>cn.gacl.maven.hello</groupId>
10     <!--artifactId指的是项目中的某一个模块,默认命名方式是"项目名-模块名"-->
11     <artifactId>hello-first</artifactId>
12     <!--version指的是版本,这里使用的是Maven的快照版本-->
13     <version>SNAPSHOT-0.0.1</version>
14 </project>
复制代码

  3.编写Java类文件,Maven项目规定,所有的*.java文件必须放在src目录下的main目录下的java目录中,在Maven01项目根目录中创建一个src目录,然后在src目录中创建main目录,在main目录中再创建java文件夹,如下图所示:

  

  在java文件夹下创建一个Hello.java文件,如下图所示

  

  在Hello.java文件中编写如下代码:

1 public class Hello{
2     public static void main(String[] args){
3         System.out.println("Hello Maven");
4     }
5 }

  4.使用Maven编译Hello.java,首先进入到项目根目录,然后使用命令”mvn compile”进行编译,如下图所示:

  

  

  使用Maven编译完成之后,在项目根目录下会生成一个target文件夹,如下图所示:

  

  打开target文件夹,可以看到里面有一个classes文件夹,如下图所示:

  

  classes文件夹存放的就是编译成功后生成的.class文件,如下图所示:

  

  5.使用"mvn clean"命令清除编译结果,也就是把编译生成的target文件夹删掉,如下图所示:

  

  执行完"mvn clean"命令后,target文件夹就会被删除了。

五、修改从Maven中心仓库下载到本地的jar包的默认存储位置

  从Maven中心仓库下载到本地的jar包的默认存放在”${user.home}/.m2/repository”中,${user.home}表示当前登录系统的用户目录(如"C:\Users\gacl"),如下图所示

  

  

  Jar包存放在这个位置不太好,我们希望能够自己定义下载下来的jar包的存放位置,因此我们可以自己设置下载到本地时的jar包的存放目录。

  在“E:\”目录下创建一个“repository”文件夹

  

  找到apache-maven-3.2.3\conf目录下的settings.xml文件,如下图所示:

  

  编辑setting.xml文件,如下图所示:

  

  加上下面的代码

1 <localRepository>E:/repository</localRepository>

  

  这样就可以把jar包下载到我们指定的E:/repository目录中了,如下图所示:

  

  把jar包下载到本地的好处就是,当编译时,会优先从本地的jar包去找,如果本地存在,就直接拿来用,如果不存在,就从Maven的中心仓库去下载。如下图所示:

  

  第一次执行"mvn compile"和"mvn clean"这两个命令时,Maven会去中央仓库下载需要的jar包,而第二次执行这两个命令时,由于所需的jar包已经在本地的仓库中存储,所以就可以直接拿来用了,这样就省去了去中央仓库下载jar包的时间。

  以上就是Maven的简单入门讲解。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在信号处理领域,DOA(Direction of Arrival)估计是一项关键技术,主要用于确定多个信号源到达接收阵列的方向。本文将详细探讨三种ESPRIT(Estimation of Signal Parameters via Rotational Invariance Techniques)算法在DOA估计中的实现,以及它们在MATLAB环境中的具体应用。 ESPRIT算法是由Paul Kailath等人于1986年提出的,其核心思想是利用阵列数据的旋转不变性来估计信号源的角度。这种算法相比传统的 MUSIC(Multiple Signal Classification)算法具有较低的计算复杂度,且无需进行特征值分解,因此在实际应用中颇具优势。 1. 普通ESPRIT算法 普通ESPRIT算法分为两个主要步骤:构造等效旋转不变系统和估计角度。通过空间平移(如延时)构建两个子阵列,使得它们之间的关系具有旋转不变性。然后,通过对子阵列数据进行最小二乘拟合,可以得到信号源的角频率估计,进一步转换为DOA估计。 2. 常规ESPRIT算法实现 在描述中提到的`common_esprit_method1.m`和`common_esprit_method2.m`是两种不同的普通ESPRIT算法实现。它们可能在实现细节上略有差异,比如选择子阵列的方式、参数估计的策略等。MATLAB代码通常会包含预处理步骤(如数据归一化)、子阵列构造、旋转不变性矩阵的建立、最小二乘估计等部分。通过运行这两个文件,可以比较它们在估计精度和计算效率上的异同。 3. TLS_ESPRIT算法 TLS(Total Least Squares)ESPRIT是对普通ESPRIT的优化,它考虑了数据噪声的影响,提高了估计的稳健性。在TLS_ESPRIT算法中,不假设数据噪声是高斯白噪声,而是采用总最小二乘准则来拟合数据。这使得算法在噪声环境下表现更优。`TLS_esprit.m`文件应该包含了TLS_ESPRIT算法的完整实现,包括TLS估计的步骤和旋转不变性矩阵的改进处理。 在实际应用中,选择合适的ESPRIT变体取决于系统条件,例如噪声水平、信号质量以及计算资源。通过MATLAB实现,研究者和工程师可以方便地比较不同算法的效果,并根据需要进行调整和优化。同时,这些代码也为教学和学习DOA估计提供了一个直观的平台,有助于深入理解ESPRIT算法的工作原理。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值