您的当前位置:首页正文

maven入门基础笔记(1)

2024-11-13 来源:个人技术集锦

1.src
-main
-java
-package
-test
-java
-package
resources

2.mvn 命令
-v 查看maven版本
compile 编译
test 测试
package 打包
clean 删除 target内部存放着编译好的字节码文件
install 安装jar包到本地仓储中

    <!--设置本地仓库>
      <localRepository>F:/moocwork/repo</localRepository
>


中央仓库

<!--设置镜像中央仓库为阿里>
<mirror>
      <id>alimaven</id>
      <mirrorOf>central</mirrorOf>
      <name>aliyun maven</name>
      <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
</mirror>

镜像仓库
配置setting.xml

会出现的问题:
1、如果版本不匹配 则mvn -v查看maven的jdk版本,然后在eclipse中配置当前使用的jdk
2、run as–>Maven build…–>在goals中compile(可以在此处使用其他的命令,如:package)—》run
若报-Dmaven.multiModuleProjectDirectory错误,则在选项–>java–》installed JRES 中设置jdk的参数,
添加上“-Dmaven.multiModuleProjectDirectory=$M2_HOME”

6.maven 包含三个互相独立的生命周期。但是每个生命周期内都是顺序执行。
1、Clean 生命周期:清理工作。pre-clean 清理之前的工作 ;clean 清理工作;post-clean 清理结束后的工作。
2、Default 生命周期:包含编码等功能,属于核心
3、Site 生命周期:生成站点 。pre-site 生成前的工作;site 生成站点; post-site 生成站点后的工作; site-deploy 站点发布工作。

clean、compile、test、package、install;
执行命令package之前,compile、test、也会默认先执行!
7.pom.xml的解析配置

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <!-- 指定了当前pom版本 -->
    <modelVersion>4.0.0</modelVersion>

    <!-- 反写的公司网址+项目名 -->
    <groupId>com.imooc.hi</groupId>
    <!-- 项目名+模块名 -->
    <artifactId>hi</artifactId>
    <!-- 第一个0大版本号, 第二个0分支版本号, 第三个0表示小版本号 0.0.1 snapshot快照 alpha 内部测试 beta 公测 
        Release 稳定 GA正式发布 -->
    <version>0.0.1-SNAPSHOT</version>
    <!-- 默认jar war zip pom -->
    <packaging>jar</packaging>

    <!-- 项目描述名 -->
    <name>hi</name>
    <!-- 项目地址 -->
    <url>http://maven.apache.org</url>
    <!-- 项目描述 -->
    <description></description>
    <!-- 开发人员 -->
    <developers></developers>
    <!-- 许可证信息 -->
    <licenses></licenses>
    <!-- 组织信息 -->
    <organization></organization>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    </properties>

    <!-- 依赖列表 -->
    <dependencies>
        <!-- 依赖项目 -->
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>3.8.1</version>
            <!-- 范围 -->
            <type>test</type>
            <!-- 范围 -->
            <scope>test</scope>
            <!-- 设置依赖是否可选默认false -->
            <optional></optional>
            <!-- 排除依赖传递列表 -->
            <exclusions>
                <exclusion>

                </exclusion>
            </exclusions>
        </dependency>
    </dependencies>
    <!-- 依赖的管理 -->
    <dependencyManagement>
        <!-- 依赖列表 -->
        <dependencies>
            <!-- 依赖项目 -->
            <dependency>
            </dependency>
        </dependencies>
    </dependencyManagement>
    <!-- 行为 -->
    <build>
        <!-- 插件列表 -->
        <plugins>
            <!-- 标签 -->
            <plugin>
                <!-- 坐标 -->
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-source-plugin</artifactId>
                <version>2.4</version>
                <executions>
                    <execution>
                        <phase>package</phase>
                        <goals>
                            <goal>jar-no-fork</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>
    <!-- 子模块对父模块继承 -->
    <parent></parent>
    <!-- 指定多个模块编译 -->
    <modules></modules>
</project>
显示全文