记一次在idea离线使用maven问题(推荐)

下面是使用IDEA离线使用Maven的完整攻略:

1. 环境准备

首先,将Maven压缩包解压到本地,例如解压到D:\maven-3.6.3目录下,并设置好环境变量MAVEN_HOMEPATH,具体可以参考Maven 安装 | 菜鸟教程 (runoob.com)

然后,进入IDEA的Settings(或者File -> Settings),在Build,Execution,Deployment -> Build Tools -> Maven中配置Maven home directory为我们解压出来的Maven的路径,即D:\maven-3.6.3

2. 离线设置

接着,我们需要在Maven的本地仓库中缓存一些依赖,以便离线使用。我们可以手动添加依赖,也可以通过执行Maven命令的方式来自动添加依赖,下面分别介绍。

2.1 手动添加依赖

假设我们需要使用commons-lang3junit两个依赖,并且我们已经下载了它们的.jar文件,分别为commons-lang3-3.9.jarjunit-4.13.2.jar,那么我们需要将它们手动添加到Maven本地仓库中。做法如下:

  1. 创建一个临时的Maven工程(可以在IDEA中创建或在命令行中使用mvn archetype:generate创建);
  2. 在该工程下的src/main/resources目录下创建一个名为lib的目录,并将下载好的.jar文件复制到该目录下(注意:.jar文件必须符合Maven的命名规则,如commons-lang3-3.9.jar应该改名为commons-lang3-3.9.jar);
  3. 在命令行中进入该工程的根目录,执行以下命令:
mvn install:install-file -Dfile=src/main/resources/lib/commons-lang3-3.9.jar -DgroupId=org.apache.commons -DartifactId=commons-lang3 -Dversion=3.9 -Dpackaging=jar
mvn install:install-file -Dfile=src/main/resources/lib/junit-4.13.2.jar -DgroupId=junit -DartifactId=junit -Dversion=4.13.2 -Dpackaging=jar

执行完以上两个命令后,即可将commons-lang3junit两个依赖添加到Maven的本地仓库中。

2.2 自动添加依赖

除了手动添加依赖外,我们还可以通过执行Maven命令来自动添加依赖。做法如下:

  1. 在IDEA中创建一个Java工程;
  2. 假设我们需要使用junitcommons-lang3两个依赖,我们可以在pom.xml文件中添加以下依赖配置:
<dependencies>
    <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>4.13.2</version>
    </dependency>
    <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-lang3</artifactId>
        <version>3.9</version>
    </dependency>
</dependencies>
  1. 在IDEA的Terminal中执行以下命令:
mvn dependency:go-offline -DexcludeGroupIds=org.apache.maven.plugins -DexcludeArtifactIds=maven-compat

执行完以上命令后,Maven会自动下载junitcommons-lang3两个依赖,并将它们添加到Maven的本地仓库中,以便我们离线使用。

3. 离线操作

接下来,我们就可以在离线的情况下使用Maven了。具体做法如下:

  1. 在IDEA的Maven Projects窗口中找到我们要操作的工程,右键选择Offline mode使其进入离线模式;
  2. 在IDEA的Projects窗口中找到我们要操作的Java文件,右键选择Run filename.main()运行。

需要注意的是,只要我们需要使用的依赖已经在Maven的本地仓库中,就可以在离线的情况下进行编译、测试等操作。

完整攻略到这里就结束了,下面是两个示例:

示例1:手动添加依赖

假设我们已经手动添加了junitcommons-lang3两个依赖,我们可以在IDEA中创建一个名为TestJava的Java类,在该类中使用junitcommons-lang3中的类和方法,示例代码如下:

import org.apache.commons.lang3.StringUtils;
import org.junit.Assert;
import org.junit.Test;

public class TestJava {

    @Test
    public void testStringUtils() {
        String str = "hello";
        Assert.assertEquals(StringUtils.reverse(str), "olleh");
    }
}

注意,在该示例中,我们使用了junit中的@Test注解来标记测试方法,使用org.junit.Assert类来进行断言,使用org.apache.commons.lang3.StringUtils类来进行字符串反转的操作。

示例2:自动添加依赖

假设我们已经在pom.xml文件中添加了junitcommons-lang3两个依赖,我们可以在IDEA中创建一个名为TestJava的Java类,在该类中使用junitcommons-lang3中的类和方法,示例代码如下:

import org.apache.commons.lang3.StringUtils;
import org.junit.Assert;
import org.junit.Test;

public class TestJava {

    @Test
    public void testStringUtils() {
        String str = "hello";
        Assert.assertEquals(StringUtils.reverse(str), "olleh");
    }
}

注意,在该示例中,我们依然使用了junit中的@Test注解来标记测试方法,使用org.junit.Assert类来进行断言,使用org.apache.commons.lang3.StringUtils类来进行字符串反转的操作。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:记一次在idea离线使用maven问题(推荐) - Python技术站

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

相关文章

  • Eclipse代码格式化设置简单介绍

    下面我将详细讲解“Eclipse代码格式化设置简单介绍”的完整攻略,包括操作步骤和示例说明。 简介 在编写代码的过程中,代码的格式化会对阅读和后期维护带来很大的影响,因此,我们应该保证代码格式的规范性和统一性。Eclipse提供了一系列的代码格式化设置,可以方便地帮助我们格式化代码。 操作步骤 以下是Eclipse代码格式化设置的操作步骤: 打开Eclips…

    Java 2023年6月15日
    00
  • 6000+字讲透ElasticSearch 索引设计

    ElasticSearch 索引设计 在MySQL中数据库设计非常重要,同样在ES中数据库设计也是非常重要的 概述 我们创建索引就像创建表结构一样,必须非常慎重的,索引如果创建不好后面会出现各种各样的问题 索引设计的重要性 索引创建后,索引的分片只能通过_split和_shrink接口对其进行成倍的增加和缩减 主要是因为es的数据是通过_routing分配到…

    Java 2023年5月11日
    00
  • 如何使用Java序列化框架?

    下面是关于如何使用Java序列化框架的详细讲解。本文将介绍Java序列化框架的基本使用方法、序列化与反序列化过程,以及常见问题及解决方法。 什么是Java序列化框架? Java序列化框架是Java语言中的一种序列化工具,用于将Java对象序列化为二进制形式或者反序列化二进制数据为Java对象形式。Java序列化框架可以实现Java对象的持久化存储和网络传输,…

    Java 2023年5月11日
    00
  • Spring简明分析Bean作用域

    针对“Spring简明分析Bean作用域”的问题,我给您提供以下完整攻略: 一、什么是Spring Bean作用域 Spring Bean的作用域是指在Spring容器中实例化一个bean对象时它的使用范围,即该bean对象在Spring容器中的生命周期中存在的范围。 Spring支持五种作用域: singleton(默认作用域) prototype req…

    Java 2023年5月31日
    00
  • ASP中Session技巧 默认过期时间为20分钟

    ASP中的Session技巧是网站开发中常用的技术,通过使用Session,我们可以在不同的页面间共享数据和信息。在ASP中,Session的默认过期时间为20分钟,为了更好地利用Session技术并确保其正常运行,我们需要注意以下几点: 设置Session过期时间 为了避免Session失效,我们可以通过设置Session过期时间来保持Session的有效…

    Java 2023年6月15日
    00
  • SpringBoot实现文件在线预览功能的全过程

    Spring Boot 实现文件在线预览功能的全过程 在本文中,我们将详细介绍如何使用 Spring Boot 实现文件在线预览功能。我们将介绍文件在线预览的概念、实现方式和提供两个示例。 文件在线预览概念 文件在线预览是指在 Web 应用程序中,用户可以直接在浏览器中预览文件,而不需要下载到本地再进行查看。常见的文件类型包括图片、PDF、Word、Exce…

    Java 2023年5月15日
    00
  • 使用IDEA配置Maven搭建开发框架ssm教程

    Sure, 我会提供一份详细的使用IDEA配置Maven搭建开发框架SSM的教程攻略。这个过程分为以下几个步骤: 1. 安装并配置Maven和MySql 首先,你需要在你的计算机上安装和配置Maven和MySql,可以参考官方文档或者在线教程。 2. 使用IDEA创建一个Maven项目 打开IDEA,点击“File” -> “New” -> “P…

    Java 2023年5月20日
    00
  • 使用Apache Camel表达REST服务的方法

    使用Apache Camel表达REST服务是一种简单有效的方法,下面是详细的攻略: 什么是Apache Camel Apache Camel是一个开源的java框架,它提供了丰富的组件和工具,用于构建高效、可靠、可扩展的企业应用集成。Camel的核心概念是路由,你可以通过编写路由来定义消息路线、传输协议等一系列复杂的业务逻辑。 创建REST服务 首先,我们…

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