如何手动把别人给的jar包导入自己的项目,并可以在package时打进jar包里

文章介绍了如何在IntelliJIDEA中导入Jar包,包括通过File->ProjectStructure设置模块依赖以及使用右键菜单的AddasLibrary功能。提供了详细的操作步骤,适用于不熟悉IDEA的新用户。

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

方法一: Project Structure导入方法

注意:这种maven打包时不会将此jar包打包进去

1.在resouce文件夹下新建lib文件夹,将jar包放入到lib文件夹中.

2.进入:File –> Project Structure

再找到Modules->Dependencies
点击最右侧的绿色+号
如图:

选择1或者2都行的:

然后就是选择你要导入的Jar包了。

然后再讲下第二种方式。

方法二: 右键添加Jar包

注意:这种maven打包时不会将此jar包打包进去

1.在resouces文件夹下新建lib文件夹,将jar包放入到lib文件夹中.

2.你需要导入的Jar包上,点击右键,选择Add as Library…

点击OK就行了。

方法三: jar包放到lib文件夹或者本地文件夹,在pom文件添加引入

注意:这种maven打包时可以将此jar包打包进去

三一:jar包放到lib文件夹

1. 建造lib目录,将jar包放置其中.

2. pom.xml文件

//引用lib文件夹下的zip4j-1.3.2.jar包
<dependency>
    <groupId>zip4j</groupId>
    <artifactId>zip4j</artifactId>
    <version>1.3.2</version>
    <!--system,类似provided,需要显式提供依赖的jar以后,Maven就不会在Repository中查找它-->
    <scope>system</scope>
    <systemPath>${project.basedir}/src/main/resources/lib/zip4j-1.3.2.jar</systemPath>
</dependency>
 
 
注:project.basedir 是项目的根目录,<systemPath>标签内是jar包放置的路径,
    标签内容与jar包实际所在位置保持一致即可。

三二:jar包放到本地文件夹 

将D盘runjian文件夹下的aaa-2.0jar引入项目

//引用电脑本地文件夹下的aaa-2.0.jar包
<dependency>
    <groupId>com</groupId>
    <artifactId>piao</artifactId>
    <version>2.0</version>
    <!--system,类似provided,需要显式提供依赖的jar以后,Maven就不会在Repository中查找它-->
    <scope>system</scope>
    <systemPath>D:/ruanjian/aaa-2.0.jar</systemPath>
</dependency>

-----------------------------------------------------------------------------------------------------------------------------

如果上面的pom配置完,此jar还是没打包进入,那么就加入下面一段配置.

<plugin>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-maven-plugin</artifactId>
    <configuration>
        <!--设置为true,以便把本地的system的jar也包括进来-->
        <includeSystemScope>true</includeSystemScope>
    </configuration>
</plugin>

方法四:将外部jar直接打入本地maven仓库

注意:这种maven打包时可以将此jar包打包进去

1.将jar包放入某不含中文的路径下 ,例如:D:\aaa-2.0.jar

2. 在jar包所在目录栏中输入cmd,并回车

 3. 在命令行输入操作命令

mvn install:install-file -s D:/ruanjian/apache-maven-3.6.1/conf/settings.xml -DgroupId=com.liang -DartifactId=aaa -Dversion=2.0 -Dpackaging=jar -Dfile=aaa-2.0.jar

 注意事项:

参数解释:
-s: 后面要指定maven的哪个settings文件
 
file : 为你jar包所在的路径(尽量简单并且不要含中文)
 
groupId : 为grouId号,与组成唯一识别你jar包的坐标,
          当不在公共资源jar包中, 自己自定义的jar时,可以自定义groupId号。
          格式:a.b.c
 
artifactId : 为artifactId号,与组成唯一识别你jar包的坐标,
          当不在公共资源jar包中,自己自定义的jar时,可以自定义artifactId号。
          格式: a-b-c
 
version : jar包版本号,也可以自定义
 
packaging : 包的后缀,一般都是jar
 
 
注意:参数顺序可以调整

4. 添加成功

出现【BUILD SUCCESS】 说明已经导入成功了,此时可以刷新 项目的Maven ,检测是否可以正常使用。

5. 在项目pom.xml 中添加依赖引入

        <dependency>
            <groupId>com.liang</groupId>
            <artifactId>aaa</artifactId>
            <version>2.0</version>
        </dependency>

方法五:将外来jar包直接导入maven私库nexus上(推荐)

进入nexus私库页面.

按图操作

最后点击 add, 再接着点击upload artiact(s)就上传成功了.

上传后,在releases仓库可以查到.

 最后,在项目pom文件里加入dependency依赖,刷新maven,就可以使用此jar包了.

<dependency>
    <groupId>com.piao</groupId>
    <artifactId>aaa</artifactId>
    <version>2.0</version>
</dependency>

九.遇到的问题: mvn install设置默认安装路径

1.问题描述 

  由上图可知,我已经【BUILD SUCCESS】导入成功了,但是路径不对,我D 盘的Maven仓库是空的,而截图显示的是导入到C 盘的 .m2 默认路径下了。

        由 【mvn install】命令可知,在导入命令中,有jar “来”的路径,没有“去”的路径,所以和命令无关,那就去找Maven 本身的设置文件  

2. 安装位置设置

        在Maven 安装路径下的  /conf/settings.xml  文件中,找到下面这部分设置

         将【localRepository】标签提出并解开,示例代码如下图所示

       指定到镜像这一层就行。我个人的镜像路径如下所示,参考者改为自己的路径就行

          修改后,重新导入jar如下图所示

        提醒:Settings文件可以修改,只要按照它的提示就行,但是在任何配置中,不要使用中文,以免配置文件读取失败,修改后一定要保存,不保存没用的。 

<think>好的,我需要解决用户在IntelliJ IDEA中手动导入JAR与Maven依赖管理可能产生的冲突问题。根据提供的引用内容,用户可能遇到了Maven无法自动下载依赖,导致需要手动导入JAR,但担心这样会引起冲突。 首先,手动导入JAR到Maven本地仓库(如引用2和3所述)是一种解决方法,但需要确保遵循正确的步骤。用户可能没有正确使用`mvn install:install-file`命令,导致依赖未被正确识别。此外,手动添加JAR项目库(引用3提到的)可能绕过Maven,导致版本不一致或重复。 接下来,需要分析冲突的可能性。如果手动导入JAR与Maven依赖中的相同groupId和artifactId但不同版本,Maven可能会根据依赖调解规则选择版本,导致冲突。此外,直接添加JAR项目可能导致类路径中出现多个版本,引发运行错误。 解决方案应括正确的手动安装到本地仓库,确保依赖坐标一致,检查依赖范围,以及处理重复依赖。同,提醒用户优先排查网络问题或镜像设置,避免手动导入的必要。 最后,生成相关问题,帮助用户进一步理解Maven依赖管理和冲突解决。</think>在IntelliJ IDEA中手动导入JAR与Maven依赖管理可能产生冲突的场景及解决方案如下: ### 一、冲突场景分析 1. **坐标重复冲突** 手动安装到Maven本地仓库,如果指定的$groupId$、$artifactId$与现有依赖坐标重复但版本不同,Maven会根据依赖调解规则选择版本[^3] 2. **类路径重复加载** 通过`File > Project Structure > Libraries`直接添加JAR(非Maven方式),会导致该JAR脱离Maven管理,可能与其他模块的同名依赖产生重复加载 $$ 冲突概率公式:P = \frac{相同类数量}{总类数量} \times 版本差异系数 $$ ### 二、推荐解决方案 #### 步骤1:正确手动安装到Maven仓库 ```bash mvn install:install-file \ -Dfile=my-local.jar \ -DgroupId=com.custom \ -DartifactId=special-lib \ -Dversion=1.0.0 \ -Dpackaging=jar ``` *注意:必须保证$groupId$、$artifactId$与企业内部/第三方库的命名规范不重复[^2]* #### 步骤2:POM声明规范化 ```xml <dependency> <groupId>com.custom</groupId> <!-- 与安装指定的坐标严格一致 --> <artifactId>special-lib</artifactId> <version>1.0.0</version> </dependency> ``` #### 步骤3:依赖冲突检测 1. 执行`mvn dependency:tree`查看依赖树 2. 使用IDEA的`Maven Helper`插件检测冲突 3. 若出现`omitted for duplicate`警告,需通过`<exclusions>`排除旧版本 ### 三、特殊场景处理 当遇到**无法覆盖的中央仓库依赖**: 1. 修改本地安装的版本号(如原版2.0改为2.0-custom) 2. 添加`<classifier>`标识符 ```xml <dependency> <groupId>org.apache</groupId> <artifactId>common-lib</artifactId> <version>2.4</version> <classifier>customized</classifier> </dependency> ``` ### 四、最佳实践建议 1. 优先检查Maven配置(镜像源、代理设置)[^1] 2. 私有依赖建议部署Nexus私服 3. 每次手动安装后执行`mvn clean install -U`
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值