Maven学习之Eclipse与Maven工具的整合

我爱海鲸 2022-03-07 10:49:37 暂无标签

简介Eclipse与Maven工具的整合以及常见的问题

1、如果你还没有安装maven安装包,请参考

Maven学习之Maven安装、IntelliJ IDEA与Maven工具的整合

进行安装、配置本地仓库、环境变量。比较旧的eclipse版本,如果想与maven整合,

那么需要先安装一个eclipse-maven插件,才能再整合

2、Eclipse配置Maven

首先, 选择window下的首选项,参考下图中的1,2步

然后, 找到Maven中的Installations,选择Add,添加你安装的Maven,参考下图中的3,4,5

再选择Maven中的User Settings,添加maven中的settings文件,参考下图中的6,7,8,9

这样,eclipse就配置好了maven软件

3、创建Maven项目

选择File中的New,去Other里寻找Maven,参考下图中的1,2。

在Maven中选择Maven Project,进行创建,参考下图中的3.

选择默认的工作空间,参考下图中的4.

然后选择创建maven项目的模型:quickstart,参考下图中的5.

在弹出的新窗口中的文本框中进行命名。参考下图中的6,7,8.

这样项目就创建好了,内部有一个pom.xml文件,用于配置项目依赖的jar文件信息

下面是开发mr所依赖的jar文件配置(如果是第一次,会进行联网下载,保证网络良好)

<dependency>
<groupId>jdk.tools</groupId>
<artifactId>jdk.tools</artifactId>
<version>1.6</version>
<scope>system</scope>
<systemPath>${JAVA_HOME}/lib/tools.jar</systemPath>
</dependency>
<!-- https://mvnrepository.com/artifact/org.apache.hadoop/hadoop-common -->
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-common</artifactId>
<version>2.7.6</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.apache.hadoop/hadoop-hdfs -->
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-hdfs</artifactId>
<version>2.7.6</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.apache.hadoop/hadoop-mapreduce- client-core -->
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-mapreduce-client-core</artifactId>
<version>2.7.6</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.apache.hadoop/hadoop-client -->
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-client</artifactId>
<version>2.7.6</version>
</dependency>

经常出现的问题总结

问题总结1

问题描述: maven下载安装,并配置到tomcat产生Could not calculate build plan: Plugin
org.apache.maven.plugins:maven-resource
解决方法:

如果还是不行,可以打开并修改conf/settings.xml,添加如下内容:

<!-- 设置本地仓库位置-->
<localRepository>G:\maven1\repository</localRepository>
<!-- 设置远程仓库-->
<mirror>
<id>nextus-aliyun</id>
<mirrorOf>*</mirrorOf>
<name>Nexus aliyun</name>
<url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>

注:

1.本地仓库在eclipse中默认是 C:\Users\user.m2\repository 可自定义,注意配置路径不能出现中文
2. mirror表示的是访问镜像。如果本地仓库没有项目所需要的jar包,就会通过这里的mirror配置的url地址进行从
远程仓库获取需要的jar,同时将这个jar添加到本地目录中,当再次使用的时候,就会直接从本地仓库中直接获
取。我这里选择的是阿里云

问题总结2

解决: 包(hadoopjdk,javajdk,mavenjdk)的安装路径不能出现中文,空格(比如:Program files)

问题总结3

软件的版本问题,有时版本会出现不匹配,更改相关的版本即可

问题总结4

问题描述: 遇到Missing artifact jdk.tools:jdk.tools:jar:1.8的问题
原因: tools.jar包是JDK自带的,pom.xml中依赖的包隐式依赖toolls.jar包,而tools.jar并未在库中,只需将tools.jar包
添加到jdk库中即可
解决方案: 在pom文件中添加如下代码

<dependency>
<groupId>com.sun</groupId>
<artifactId>tools</artifactId>
<version>1.8.0</version>
<scope>system</scope>
<systemPath>${env.JAVA_HOME}/lib/tools.jar</systemPath>
</dependency>

默认pom.xml如果不指定JDK版本,版本为1.5,而有些项目需要使用泛型等特性,所以需要使用1.8版本的JDK,要手动修
改pom.xml
涉及到的插件还有maven-compiler-plugin
打开pom.xml,增加配置节点
<!—局部jdk配置,pom.xml中>

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

问题总结5

问题描述: 配置完maven,运行@Test代码出现下面的错误

java.lang.NoSuchMethodError:
org.junit.runner.Request.classWithoutSuiteMethod(Ljava/lang/Class;)Lorg/junit/runner/Request;
at
org.eclipse.jdt.internal.junit4.runner.JUnit4TestLoader.createFilteredTest(JUnit4TestLoader.java
:79)
at org.eclipse.jdt.internal.junit4.runner.JUnit4TestLoader.createTest(JUnit4TestLoader.java:71)
at org.eclipse.jdt.internal.junit4.runner.JUnit4TestLoader.loadTests(JUnit4TestLoader.java:46)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:522)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:760)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:206)

原因: junit的版本低了,使用的是junit 4.10,改成4.12即可

问题总结6

问题描述: 原来的项目的更新成现在的maven库

解决: 右击当前的项目----选项:Maven---选项:Update Project—在出现的页面中选择要更新的工程,点击更新即可

 

 

 

你好:我的2025