博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Eclipse下的Maven
阅读量:7048 次
发布时间:2019-06-28

本文共 8712 字,大约阅读时间需要 29 分钟。

本文转载自:

当我们无法从本地仓库找到需要的构件的时候,就会从远程仓库下载构件至本地仓库。一般地,对于每个人来说,书房只有一个,但外面的书店有很多,类似第,对于Maven来说,每个用户只有一个本地仓库,但可以配置访问很多远程仓库。

强烈推荐书籍:Maven实战   许晓斌著。目前是第一版 

 

注意:最新版本的Eclipse代号Mars,已经直接集成了Maven,所以无需安装m2Eclipse插件。

 

Eclipse下新建Maven项目

1、下载Maven安装包

进入Maven官网的下载页面:,如下图所示:

选择当前最新版本:"apache-maven-3.3.9-bin.zip",下载到本地,解压缩到本地磁盘下。

2、配置

 2.1 环境变量的配置

2.2 修改默认的本地仓库位置

  进入Maven安装目录下的conf子目录中,打开settings.xml进行配置修改。

<!-- localRepository

| The path to the local repository maven will use to store artifacts.
|
| Default: ${user.home}/.m2/repository
<localRepository>/path/to/local/repo</localRepository>
-->

<localRepository>D:/SoftWare/maven/repository</localRepository>

 

  Maven默认的本地仓库位置是当前用户工作目录下的".m2/repository",使用过程中这个目录里的文件会比较多,占用空间越来越大。一般建议更换到其它磁盘目录下。如下配置,就把默认的本地仓库更改到自己创建的目录。

  如下图所示的localRepository标签中设置,就把默认的本地仓库更改到D:/SoftWare/maven/repository这个目录(这个目录结构需要自己创建好)。

2.3修改默认的中央仓库镜像

  Maven默认的中央仓库里的文件不全。所以,都需要自行添加其它的镜像地址。在settings.xml文件中的“<mirrors>”标签里添加如下内容:

其实,是如下   

注意啦!有时候,上面这样配置,不稳定,我这里给大家分享一个稳定的setting.xml  !!!(优先)

D:/SoftWare/maven/repository
osc
central
http://maven.aliyun.com/nexus/content/repositories/central
osc_thirdparty
thirdparty
http://maven.aliyun.com/nexus/content/repositories/central
jdk-1.4
1.4
nexus
local private nexus
http://maven.aliyun.com/nexus/content/repositories/central
true
false
nexus
local private nexus
http://maven.aliyun.com/nexus/content/repositories/central
true
false
osc
true
osc
http://maven.aliyun.com/nexus/content/repositories/central
osc_thirdparty
http://maven.aliyun.com/nexus/content/repositories/central
osc
http://maven.aliyun.com/nexus/content/repositories/central

保存所做的修改,同时还需要把这个settings.xml文件复制一份到“D:\SoftWare\maven”目录下。

3、eclipse里的Maven插件安装

  Eclipse默认不支持Maven。需要给它添加m2eclipse插件。下面是具体的操作步骤。

3.1、插件安装

  打开Eclipse的Help->Install New Software,如下图所示:

选择“Add..”按钮,又会弹出如下对话框:

这个对话框就是用于添加一个插件地址的。在“Name”对应的输入框里输入该操作的一个标识名。在“Location”对应的输入框里输入这个插件的安装地址。注:Maven的Eclipse插件地址为:。输入后,如下图所示:

Name:  m2e

Location:  http://download.eclipse.org/technology/m2e/releases

输入完成后,点击右下角的“OK”按钮,就会弹出如下对话框:

MARS版本

我这里,就,已经安装过了。

 

这一步,有可能会

注意:安装maven时一定要注意版本匹配问题:下面就是我安装时遇到的问题

首先安装maven时遇到Missing requirement: m2e logback configuration 1.7.0.20160603-1933 (org.eclipse.m2e.logback.configur。。。的问题。

这是由于eclipse和maven插件版本不匹配,我的eclipse版本为如下,只能安装m2e - 的版本,高版本就报错

 

 

推荐用MARS版本!!!

 注意,有些版本,我已测试过,如,NEON版本

会发生上述的错误。

 

这里需要选择想要安装的插件的详细内容。选中“Maven Integration for Eclipse”前面的复选框。如下图所示:

选择完成后,点击右下方的“Next>”按钮进行安装。安装成功后,会提示需要重启Eclipse来生效这次配置。重启之后,这个Eclipse就可以使用m2eclipse插件功能了。

需要一段时间

自动重启

 

3.2、Eclipse下对maven进行配置

   插件安装好之后,还需要进行一些配置才能够开始使用Maven的功能。

3.2.1、 设置m2eclipse插件所关联的Maven程序

  需要修改配置:首先选择Window->Preferences,弹出如下对话框

在这个对话框左边的导航栏中展开“Maven”目录结点,并选择“Installations”子节点,如下图所示:

这里需要关联上对应的Maven安装程序。具体操作是,在右边面板中选择“Add…”按钮,会弹出如下选择Maven安装目录的选择对话框:

通过这个对话框来选择Maven的具体安装目录。选择好之后就点击“确定”按钮。如下图所示:

3.2.2、 设置自定义的本地仓库

   选择如上图对话窗口左边菜单树 “Maven”节点下的“UserSettings”子节点,它默认的配置文件是“C:\Documents and Settings\csdn\.m2\settings.xml”,如下图所示:

这边需要修改为我们自定义仓库位置下的settings.xml文件。具体操作是,点击“Browse…”按钮来选择上一步骤修改的本地仓库目录下的settings.xml文件,如下图所示:

在上图中选择D:\SoftWare\apache-maven-3.3.9\conf目录下的“settings.xml”文件,点击“打开”按钮来确认刚才的选择,就会回到如下图的对话窗口中:

在上图中点击右下角的“OK”按钮来完成所有的配置修改。

4、Eclipse创建maven项目

 在eclipse菜单栏中选择"File"->"News"->"Other"菜单项,就会打开如下对话窗口,在窗口中选择"Maven"节点下"Maven Project"条目,如下图所示,之后跟着下一步。。。就可以将项目创建好了。

我这里,选择other

想说的是,SBT是为scala专门而设计的,但是,一般很多人还是用的是maven。

使用maven-archetype-quickstart 或者 coccoon-22-archetype-webapp

 或者

也许,这一步,会碰到如下问题。

解决办法:

或者

Catalog File: http://repo2.maven.org/maven2/archetype-catalog.xml

Description: maven catalog

 然后,再重新 File  ->   New   ->   Maven Project   

这里,自己任意取,

Group Id:  com.zhouls.spark

Artifact Id:  SparkApps

CoreException: Could not calculate build plan: Plugin org.apache.maven.plugins:maven-compiler-plugin:3.1 or one of its dependencies could not be resolved: Failed to read artifact descriptor for org.apache.maven.plugins:maven-compiler-plugin:jar:3.1: UnresolvableModelException: Failure to transfer org.apache.maven.plugins:maven-plugins:pom:24 from https://repo.maven.apache.org/maven2 was cached in the local repository, resolution will not be reattempted until the update interval of central has elapsed or updates are forced. Original error: Could not transfer artifact org.apache.maven.plugins:maven-plugins:pom:24 from/to central (https://repo.maven.apache.org/maven2): timeout

解决方法:

1.找到maven库目录,进入:D:\SoftWare\maven\repository\org\apache\maven\plugins\maven-compiler-plugin\3.1

2. 若3.1这个目录下只有,"maven-compiler-plugin-3.1.pom.lastUpdated" 则需要到http://repo1.maven.org/maven2/org/apache/maven/plugins/maven-compiler-plugin/3.1/,把里面的文件下载下来放到目录3.1下,如果该仓库中没有,那么可以去这个地方下载下来,然后放置到对应的本地仓库中

可见,我这里是不需进行步骤2,直接到步骤3.

3.删除3.1下的maven-compiler-plugin-3.1.pom.lastUpdated文件或3.1目录下的所有文件

4.项目右键-->maven-->Update Dependencies

 

 即,得到解决!

如果以上方法还是无法解决该问题:则 打开settings.xml,尝试换个mirror镜像或者干脆采用默认的仓库,即注释掉

删除清空

再重新来一次

这里,我继续,上面的步骤,下来。用了我那个稳定的setting.xml文件,之后,中间不会出现什么问题!!!

把此处默认的jdk,J2SE-1.5,变成我们自己安装的jdk版本(jdk1.7或jdk1.8)

得到

 对应,得到

这个pom.xml文件,里有我们工程实际时编写和运行时的依赖和支持。

进入,如下

选择,pom.xml

在修改pom.xml文件之前,Maven Dependencies如下

创建项目之后,pom.xml默认的内容如下

4.0.0
com.zhouls.spark
SparkApps
0.0.1-SNAPSHOT
jar
SparkApps
http://maven.apache.org
UTF-8
junit
junit
3.8.1
test

这一步,最为关键,具体怎么修改pom.xml,是要看自己的需求。

 

我这里,因为是spark1.5.2版本。

其他的,类似,这里不多赘述。

 

这过程中,最好是去复制,官网。为了避免自己手误或者格式不对!!!可以避免如下面的错误!

 

修改后的pom.xml内容是

4.0.0
com.zhouls.spark
SparkApps
0.0.1-SNAPSHOT
jar
SparkApps
http://maven.apache.org
UTF-8
4.10
1.5.2
2.6.0
junit
junit
${junit.version}
test
org.apache.spark
spark-core_2.10
${spark.version}
org.apache.spark
spark-sql_2.10
${spark.version}
org.apache.spark
spark-hive_2.10
${spark.version}
org.apache.spark
spark-streaming_2.10
${spark.version}
org.apache.spark
spark-streaming-kafka_2.10
${spark.version}
org.apache.hadoop
hadoop-client
${hadoop.version}
src/main/java
src/main/test
maven-assembly-plugin
jar-with-dependencies
make-assembly
package
single
org.codehaus.mojo
exec-maven-plugin
1.2.1
exec
java
true
false
compile
com.zhouls.spark.SparkApps.cores.WordCount
org.apache.maven.plugins
maven-compiler-plugin
2.3.2
1.6
1.6

 正在下载

立马生成好了。可见,Maven自动生成jar包,多么的方便!

其他的一一去解决!

 

对应地,生成,

 我的这里,得到如下

至此,Eclipse下新建Maven项目、自动打依赖jar包。大功告成!!!

 

 

 

 Eclipse里创建Maven,比较有价值的错误总结

 

   

 

 

 

  感谢如下博主:

 

 

作者:

出处:

 

你可能感兴趣的文章
yaml官方介绍
查看>>
three.js模型
查看>>
网络流24题 餐巾计划问题
查看>>
基于 Android NDK 的学习之旅-----序言
查看>>
InnoDB recovery过程解析
查看>>
鼓浪屿
查看>>
alloc_skb申请函数分析
查看>>
WPF PRISM开发入门二(Unity依赖注入容器使用)
查看>>
使用 data-* 属性来嵌入自定义数据:
查看>>
炒股的常见技术指标
查看>>
工控随笔_07_西门子_WinCC利用命令行实现操作log日志
查看>>
解决MySQL报错The server time zone value 'Öйú±ê׼ʱ¼ä' is unrecognized or represents ........
查看>>
HUST 1017 Exact cover
查看>>
SessionStateStoreProviderBase.GetItemExclusive Method
查看>>
Excel Wrapper
查看>>
Thread和Service应用场合的区别
查看>>
poj 2632 模拟题
查看>>
递归--木棍问题
查看>>
企业门户(Portal)项目实施方略与开发指南
查看>>
基于百度定位SDK的定位服务的实现
查看>>