一篇文章带你搞定JAVA Maven

一篇文章带你搞定JAVA Maven

什么是Maven?

Maven是一款基于Java平台的构建工具,它可以帮助开发者自动化地构建、打包、发布和管理Java项目中的各种依赖。使用Maven可以大大简化Java项目的开发和维护。Maven有一个中心仓库,里面包含了主流的Java依赖。我们可以通过Maven来自动从中心仓库中下载所需的依赖,避免了手动下载和管理依赖的麻烦。

安装Maven

要使用Maven,我们首先需要在计算机上安装它。可以从官方网站(https://maven.apache.org/download.cgi)下载Maven安装包。下载完成后,按照安装指南(https://maven.apache.org/install.html)进行安装即可。

创建Maven项目

  1. 使用命令行创建Maven项目

进入到你想创建项目的目录下,执行以下命令:

mvn -B archetype:generate -DgroupId=com.example -DartifactId=my-app -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false

其中,-DgroupId表示项目的groupId,-DartifactId表示项目的artifactId,这两个参数加在一起就组成了项目的唯一标识。-DarchetypeArtifactId表示使用哪个archetype模板创建项目,这里使用的是maven-archetype-quickstart

  1. 使用Eclipse创建Maven项目

在Eclipse中,选择“File” -> “New” -> “Other”,在弹出的“New”界面中选择“Maven Project”,然后按照向导创建项目即可。

修改pom.xml文件

pom.xml文件是Maven项目的配置文件,里面包含了项目的各种配置信息。我们需要对pom.xml文件进行修改来添加项目的依赖和配置。

添加一个依赖库

这里以添加一个日志库log4j2为例。我们首先需要在pom.xml文件中添加如下代码:

<dependencies>
    <dependency>
        <groupId>org.apache.logging.log4j</groupId>
        <artifactId>log4j-api</artifactId>
        <version>2.14.1</version>
    </dependency>
    <dependency>
        <groupId>org.apache.logging.log4j</groupId>
        <artifactId>log4j-core</artifactId>
        <version>2.14.1</version>
    </dependency>
</dependencies>

这里,我们指定了log4j的groupId、artifactId和version。Maven会自动从中心仓库中下载并添加这两个依赖。

添加一个插件

这里以添加一个编译插件maven-compiler-plugin为例。我们需要在pom.xml文件中添加如下代码:

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.8.1</version>
            <configuration>
                <source>1.8</source>
                <target>1.8</target>
            </configuration>
        </plugin>
    </plugins>
</build>

这里,我们指定了maven-compiler-plugin的groupId、artifactId和version,并配置了插件的相关参数。

使用Maven构建项目

在项目目录下执行以下命令:

mvn clean package

其中,clean表示清理旧的构建结果,package表示打包。Maven会在项目目录下的target目录中生成一个可执行的jar包。

示例1:使用log4j2打印日志

在src/main/java目录下,新建一个LogDemo.java文件,添加以下代码:

import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;

public class LogDemo {
    private static final Logger logger = LogManager.getLogger(LogDemo.class);
    public static void main(String[] args) {
        logger.info("Hello, world!");
    }
}

这里,我们使用log4j2打印Hello, world!的日志。在执行前,我们需要修改log4j2.properties文件。在src/main/resources目录下,新建一个log4j2.properties文件,添加以下代码:

status = warn
appender.console.type = Console
appender.console.name = STDOUT
appender.console.layout.type = PatternLayout
appender.console.layout.pattern = [%d{HH:mm:ss.SSS}] [%p] [%c] %m%n
rootLogger.level = info
rootLogger.appenderRef.console.ref = STDOUT

在控制台执行以下命令:

java -cp target/my-app-1.0-SNAPSHOT.jar LogDemo

这里,target/my-app-1.0-SNAPSHOT.jar表示可执行的jar包,LogDemo表示要执行的类。执行后,我们可以看到控制台输出了一行日志。

示例2:使用JUnit进行单元测试

在src/test/java目录下,新建一个AppTest.java文件,添加以下代码:

import static org.junit.Assert.assertTrue;

import org.junit.Test;

public class AppTest {
    @Test
    public void shouldAnswerWithTrue() {
        assertTrue(true);
    }
}

这里,我们使用JUnit进行单元测试。在执行前,我们需要在pom.xml文件中添加JUnit的依赖。在dependencies标签下,添加如下代码:

<dependency>
    <groupId>junit</groupId>
    <artifactId>junit</artifactId>
    <version>4.13.2</version>
    <scope>test</scope>
</dependency>

执行以下命令:

mvn test

这里,test表示执行测试。Maven会自动编译测试代码,并执行测试。在控制台输出中,我们能够看到测试结果。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:一篇文章带你搞定JAVA Maven - Python技术站

(0)
上一篇 2023年5月19日
下一篇 2023年5月19日

相关文章

  • Springmvc 4.x利用@ResponseBody返回Json数据的方法

    以下是关于“SpringMVC 4.x利用@ResponseBody返回JSON数据的方法”的完整攻略,其中包含两个示例。 SpringMVC 4.x利用@ResponseBody返回JSON数据的方法 在SpringMVC 4.x中,我们可以使用@ResponseBody注解将Java对象转换为JSON格式的数据,并将其返回给客户端。本文将介绍两个示例,包…

    Java 2023年5月16日
    00
  • 微信小程序js文件改变参数并在视图上及时更新【推荐】

    针对这个问题,我为您提供以下完整攻略: 问题背景 在微信小程序开发中,我们通常需要在视图中传递参数,并且这些参数可能会随着操作或者其他因素发生变化。如果我们希望在参数发生变化的时候,及时更新视图,该怎么做呢? 解决方案 一种通用的解决方案是使用小程序提供的相应生命周期函数,根据参数的变化更新视图。具体实现方式如下: 1. 在wxml文件中绑定数据 首先需要在…

    Java 2023年5月23日
    00
  • java编程之基于SpringBoot框架实现扫码登录

    下面我将详细讲解“Java编程之基于SpringBoot框架实现扫码登录”的完整攻略。 概述 本篇攻略将介绍如何通过SpringBoot框架实现扫码登录功能。扫码登录功能是近年来非常流行的一种登录方式,主要是便于用户的使用和提高安全性。 实现步骤 本文主要分为以下几个步骤: 配置开发环境 创建SpringBoot项目 实现扫码登录 测试运行 1. 配置开发环…

    Java 2023年5月19日
    00
  • Java文件与IO流操作原理详细分析

    Java文件与IO流操作原理详细分析 什么是IO流 Java中的IO流是用来处理输入和输出的流。IO流可以分为两种类型:字节流和字符流。它们之间的区别在于字节流以字节为单位进行操作,而字符流以字符为单位进行操作。不管是哪种类型的流,都分为输入流和输出流。输入流用于从文件中读取数据,输出流用于将数据写入到文件中。在Java IO流中,InputStream和R…

    Java 2023年5月20日
    00
  • 一文吃透Elasticsearch

    本文已经收录到Github仓库,该仓库包含计算机基础、Java基础、多线程、JVM、数据库、Redis、Spring、Mybatis、SpringMVC、SpringBoot、分布式、微服务、设计模式、架构、校招社招分享等核心知识点,欢迎star~ Github地址 如果访问不了Github,可以访问gitee地址。 gitee地址 跟大家分享Elastic…

    Java 2023年4月17日
    00
  • Tomcat配置https SSL证书的项目实践

    下面我将详细讲解关于Tomcat配置https SSL证书的完整攻略,包含整个步骤和相关代码示例。 准备工作 通过证书颁发机构获取SSL证书,得到包含证书内容和私钥内容的文件,通常为.pfx、.p12或.pem格式。 将证书导出为JKS格式,JKS格式是Java KeyStore的缩写,它是Java系统中常用的密钥库格式。 keytool -importke…

    Java 2023年5月19日
    00
  • SpringMVC通过RESTful结构实现页面数据交互

    SpringMVC通过RESTful结构实现页面数据交互 在Web应用程序中,页面数据交互是非常重要的。SpringMVC通过RESTful结构可以实现页面数据交互,本文将详细介绍如何使用SpringMVC通过RESTful结构实现页面数据交互,并提供两个示例说明。 RESTful结构 RESTful是一种Web应用程序的架构风格,它使用HTTP协议进行通信…

    Java 2023年5月17日
    00
  • Java SpringBoot核心源码详解

    Java SpringBoot核心源码详解 简介 本篇攻略主要讲解Java SpringBoot核心源码的相关内容,详细解析SpringBoot框架的设计和实现原理。同时,为了让读者更加深入理解,我们将通过两条示例代码来解释相关概念。 SpringBoot框架基础 SpringBoot框架基于Spring框架之上,通过提供许多默认配置和简化部署流程等功能,让…

    Java 2023年5月15日
    00
合作推广
合作推广
分享本页
返回顶部