Maven错误收集

Eclipse 创建项目时报错

Could not resolve archetype org.apache.maven.archetypes:maven-archetype-quickstart:1.1 from any of the configured repositories.
Could not resolve artifact org.apache.maven.archetypes:maven-archetype-quickstart:pom:1.1
Could not transfer artifact org.apache.maven.archetypes:maven-archetype-quickstart:pom:1.1 from/to alimaven (https://maven.aliyun.com/repository/central): sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
Could not transfer artifact org.apache.maven.archetypes:maven-archetype-quickstart:pom:1.1 from/to alimaven (https://maven.aliyun.com/repository/central): sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target使用

使用了阿里的中央仓库,更换为public仓库解决了该问题,公共配置未修改,修改的是个人用户配置

<mirror>
	<id>aliyunmaven</id>
	<mirrorOf>*</mirrorOf>
	<name>阿里云公共仓库</name>
	<url>https://maven.aliyun.com/repository/public</url>
</mirror>
    <profile>
      <id>jdk-1.8</id>

      <activation>
        <jdk>1.8</jdk>
      </activation>

      <repositories>
     		<repository>
			<id>alimaven</id>
			<name>aliyun maven</name>
			<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
			<releases>
			        <enabled>true</enabled>
			</releases>
			<snapshots>
				<enabled>false</enabled>
			</snapshots>
		</repository>   
      </repositories>
      
    </profile>
    

Eclipse中的配置

 

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

如果上面的方式没有解决问题,可以尝试以下的方式

1. 如果maven软件本身没有问题,那么问题就出在我们的使用方式上

2. 回顾maven使用的几个要点

下载maven软件、安装并配置环境变量

修改maven的settings文件,镜像源、本地仓库等

配置Eclipse中的maven

3. 删除已有的maven配置

删除安装软件、本地仓库;如果是当你更换过本地仓库位置时,找到他们并全部删除

然后重新安装配置

4. 重新安装

C:Users hinkpad>mvn -v
Apache Maven 3.6.2 (40f52333136460af0dc0d7232c0dc0bcf0d9e117; 2019-08-27T23:06:16+08:00)
Maven home: E:wks_mangoappapache-maven-3.6.2in..
Java version: 1.8.0_181, vendor: Oracle Corporation, runtime: E:diskappjavajdkjre
Default locale: zh_CN, platform encoding: GBK
OS name: "windows 10", version: "10.0", arch: "amd64", family: "windows"

C:Users hinkpad>java -version
java version "1.8.0_221"
Java(TM) SE Runtime Environment (build 1.8.0_221-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.221-b11, mixed mode)

查看maven版本信息,发现maven找的JDK并不是当前JAVA_HOME配置的JDK,之前配置了多次JDK环境变更,不知为何maven找了之前的某个版本的JDK

找到M2_HOME/bin目录下的mvn.cmd文件,指定JDK的路径

set ERROR_CODE=0
set JAVA_HOME=E:wks_mangoappjdk8u221

这样maven就可以找到指定版本的JDK

C:Users hinkpad>mvn -v
Apache Maven 3.6.2 (40f52333136460af0dc0d7232c0dc0bcf0d9e117; 2019-08-27T23:06:16+08:00)
Maven home: E:wks_mangoappapache-maven-3.6.2in..
Java version: 1.8.0_181, vendor: Oracle Corporation, runtime: E:wks_mangoappjdk8u221jre
Default locale: zh_CN, platform encoding: GBK
OS name: "windows 10", version: "10.0", arch: "amd64", family: "windows"

配置个人maven

复制一份全局的settings配置文件到任一位置,修改以下内容

<localRepository>E:wks_mango
epodev01</localRepository>
<mirror>
	<id>aliyunmaven</id>
	<mirrorOf>*</mirrorOf>
	<name>阿里云公共仓库</name>
	<url>https://maven.aliyun.com/repository/public</url>
</mirror>
<profile>     
      <id>JDK-1.8</id>       
      <activation>       
        <activeByDefault>true</activeByDefault>       
        <jdk>1.8</jdk>       
      </activation>       
      <properties>       
        <maven.compiler.source>1.8</maven.compiler.source>       
        <maven.compiler.target>1.8</maven.compiler.target>       
        <maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>       
      </properties>       
    </profile>

这三个分别是本地仓库的位置、镜像来源、默认JDK编译的版本;

最重要是本地仓库的位置这个配置,一个项目应该有一个自己独立的本地仓库,对应它自己的镜像来源,不可交叉,不可重复。

国内镜像用于加速Jar包的下载速度,慢一些至少不报错;

JDK编译不指定1.8会有警告,但也不报错;

本地仓库如果有jar冲突,抱歉,你项目都创建不成功,就算创建成功,也没法运行;

为一个项目指定个性的用户配置,一个独立的本地仓库,遇到冲突就删除这个本地仓库中的内容,让maven重新拉取jar。

重启一下Eclipse

这一点很重要,我在一次配置中,重启一下Eclipse再创建项目时,就不再报错了

配置本地maven catalog

如果重启eclipse后,还报错,就尝试配置一个本地的catalog

catalog下载

https://download.csdn.net/download/tpfbx/11831033

配置好之后,重新换一个本地仓库目录,或者把现有的本地仓库删除,然后重启一下Eclipse

新创建项目时,从该catalog选择项目,项目比较多,可输出以下条件过滤

maven-archetype-quickstart

maven-archetype-webapp

原文地址:https://www.cnblogs.com/perfei/p/11614787.html