pom.xml依赖报错,Missing artifact XXX 问题解决

eclipse导入或者新建Maven项目,pom.xml配置文件的报错,Missing artifact xxx-jar,问题即是Maven启动后,没有在指定仓库中找到该jar包。

可能原因

  1. 中心仓库或者本地仓库无此jar包;
  2. 有些jar包是收费的(比如:Oracle 的 ojdbc.jar 驱动包),Maven 中央库中实际上没有此资源,无法加载;
  3. pom.xml配置项不匹配。

pom.xml依赖项配置格式说明

// pom.xml
<dependencies>
		<dependency>
			<groupId>Package1</groupId>
			<artifactId>jarName</artifactId>
			<version>versionInJar</version>
		</dependency>
		<dependency>
			<groupId>Package2</groupId>
			<artifactId>jarName2</artifactId>
			<version>1.0.0</version>
		</dependency>
		......
</dependencies>
  • groupId :所依赖的jar包的相对路径,父子目录用“."注明(例:package.packageNext);
  • artifactId:依赖的jar包名;
  • version:依赖的jar包版本。

手动下载相应的jar,然后将其安装到本地仓库

  1. 下载相对应版本的jar包;
  2. 打开CMD,最好是在待安装路径下,打开(安装命令更便捷,直接在待安装路径地址栏,输入cmd,即可快速打开命令窗口);在这里插入图片描述
  3. 此处安装以ojdbc14为例,打开cmd后输入命令如下:
    在这里插入图片描述

mvn install:install-file -Dpackaging=jar -DgroupId=com.oracle -DartifactId=ojdbc14 -Dversion=11.2.0.3.0 -Dfile=ojdbc14-11.2.0.3.0.jar -DgeneratePom=true

命令解释:
install:将项目进行编译并打包到本地仓库;
install-file:安装文件;
-DgroupId=com.oracle : 指定当前包的groupId为com.oracle;
-DartifactId=ojdbc14 : 指定当前的artifactfactId为ojdbc14;
-Dversion=11.2.0.3.0 : 指定当前包的版本为11.2.0.3.0;
-Dfile=D:ojdbc14-11.2.0.3.0.jar : 指定要打的包的文件位置(之前之所以要在路径下打开cmd,就是免于输入过长路径);
-DgeneratePom=true:是否生成pom文件。

  1. 打开eclipse中的Maven项目,在项目上点击右键Maven->update或者点开pom.xml文件,单击右键Maven->update for project。

pom.xml修改后

<dependency>
			<groupId>com.oracle</groupId>
			<artifactId>ojdbc14</artifactId>
			<version>11.2.0.3.0</version>
</dependency>

猜你喜欢

转载自blog.csdn.net/qq_40921561/article/details/107976178
今日推荐