`
javaOpen
  • 浏览: 123606 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

在eclipse项目中使用maven管理依赖

    博客分类:
  • J2SE
阅读更多
概览:
如何导入maven项目至eclipse中

建立自有Maven Java类库服务器

建立符合maven代码库标准的自定义类库
Maven在管理Java类库方面有巨大的优势,像白衣所说就是非常“环保”。

    我们平时用IDE开发都是把所需要的类库一股脑的全丢到项目目录下,然后全部添加到ide的构建路径中,如果用了SVN/CVS,这样会很容易就把这些庞大的类库提交到代码库中,如果是j2ee项目,光类库可能就有百兆,严重影响checkout速度,如果是远程开发就不敢想象了。而引入maven来管理依赖,就可以很好的控制依赖项的版本,并且项目中不存在具体依赖lib,只有对于依赖的描述,来源也可以很好的集中控制。


我们的项目在eclipse wtp下开发,而项目的依赖我用maven来管理,并且同时也不影响wtp的正常使用,以下是整合eclipse和maven的方法和步骤,关于maven的使用这里不做介绍,相关的文档网上有很多,本文仅做简单介绍:

以一个webapp项目my-webapp为例


1. 建立支持maven的eclipse项目

首先用maven来建立标准布局的webapp项目,然后用maven生成eclipse wtp项目配置信息,再用eclipse导入即可

下面先说说第一种:


1.1 生成maven项目
生成标准布局的webapp项目,在控制台执行下面命令(groupId后面是包名,artifactId后面是项目名称):

mvn archetype:create -DgroupId=net.jeffrey
         -DartifactId=my-webapp
         -DarchetypeArtifactId=maven-archetype-webapp

    生成标准布局的普通java项目,执行:

mvn archetype:create -DgroupId=net.jeffrey -DartifactId=my-app

完成后你会看到已经生成了一个名为my-webapp的文件夹,这就是刚刚生成好的项目目录

在my-webapp根目录下,你会看到名为pom.xml的文件,这个就是maven的项目描述文件

         编辑pom配置项目所需依赖,例如下面




         Maven的代码库是这样的目录结构,groupId是该类库所属的组织,作为文件目录,包名结构映射成目录结构,artifactId就是具体的类库名称了,是groupId的一个子目录,version是版本号,每个版本都有一个单独的目录,里面放置的就是具体的jar包。

比如spring-2.0.jar在maven代码库中的路径就是org/springframework/spring/2.0/spring-2.0.jar

关于依赖的写法,可以去这里查询:http://mvnrepository.com/


1.2 生成eclipse项目

在控制台下进入项目目录,如果是从maven webapp项目生成eclipse wtp,执行:

mvn –Dwtpversion=1.0 eclipse:eclipse(wtp1.0以上版本均可用)

普通eclipse项目执行:mvn eclipse:eclipse

然后在eclipse中import项目即可

1.3 在eclipse中设置maven路径变量

刚导入的项目上会有错误标记,不用担心,因为还没有设置maven的类库变量

打开项目的属性框,在Java Build Path里我们可以看到项目依赖类库的路径都已经给自动设置好了




下面设置maven的路径变量M2_REPO

            Window -> Preferences -> Java -> Build Path -> Classpath Variables,New

             Name命名为M2_REPO,路径为你的本地的maven类库地址,这里为C:/Documents and Settings/jeffrey/.m2/repository,设置成功后重新编译,发现项目的错误标记已经消除了,至此,eclipse项目已经导入成功了

1.4 为项目添加新的依赖

编辑pom文件,添加新的dependency,保存後

在控制台分别执行:

mvn eclipse:clean

mvn -Dwtpversion=1.0 eclipse:eclipse

    在eclipse中刷新项目即可看到新的依赖项已经添加到eclipse项目中

1.5 非maven标准的项目布局

前面已经介绍了如何新建一个maven项目并导入到eclipse中,但对于已有的wtp项目,其项目布局是不符合maven方式的(eclipse下wtp项目web目录在项目根目录下WebContent,maven布局是在src/main/webapp),这就不能直接通过eclipse:eclipse来生成eclipse的依赖

但可以通过改写项目pom文件来指定源码目录和测试源码目录:

                  
xml 代码
<build>  
  <finalName>my-webappfinalName>  
  <sourceDirectory>srcsourceDirectory>  
  <testSourceDirectory>testtestSourceDirectory>  
build>  


对于web根目录,还没有什么好办法来特别指定,如果哪位朋友知道,麻烦指教。

2. 建立Maven2的本地代码库服务器,也就是常说的“私服”

官方的maven repository服务器特别的慢,还记得上次海底电缆事故么?官方的服务器根本就无法访问,那段时间简直要抓狂。并且官方服务器类库版本通常不是最新,有时候想用最新版的还得自己动手。(下面会介绍如何自己动手做),所以建立一个自己的本地代码服务器对于整个团队就特别有意义。

Maven的服务器很简单,一个普通的http服务器就行,比如apache,装好apache以后。

将你本地代码库文件夹拷贝到apache安装目录下htpdocs/maven2,windows用户是C:\Documents and Settings\jeffrey\.m2\repository,linux下是 /home/Jeffrey/.m2/repository(注意.m2在linux下是隐藏文件夹)

启动apache服务器,在浏览器中输入http://localhost/maven2/repository,应该可以查看到repository的文件目录

编辑项目pom,指定本地的代码库服务器

在project中加入:

   
xml 代码
<repositories>  
  <repository>  
    <id>mylibsid>  
    <url>http://localhost/maven2/repositoryurl>  
  repository>  
repositories>  



可以加入多个repository,mvn会按照顺序检索,如果都没有找到,最后会去找官方的服务器

3. 添加新的类库到本地代码服务器中

在maven官网有很多类库都找不到,只能自己动手,丰衣足食。

请先确认官网确实没有的情况下再自己做,毕竟还是挺麻烦的

可在以下两个网站查阅:http://mvnrepository.com/,http://repo1.maven.org/maven2/

前面已经说明了maven代码库的文件目录组织方式,同一个jar对于每个版本都有一个独立的文件夹来存放,除了jar还要有该jar的描述文件.pom,以及他们的校验文件.sh1

.pom文件里定义了该jar的名称、版本以及该jar所依赖到的其他jar(这也就是为什么引入一个jar却带出一大堆的jar来)

最简单的pom如下:




         为jar和pom生成校验文件

         可以通过一个ant任务来做:

xml 代码
  
<target name="checksum" description="Generate checksum file for jar and pom">  
       <checksum algorithm="SHA" fileext=".sha1">  
           <fileset dir="d:/javalib" id="id">
              <include name="**/*.pom" />  
              <include name="**/*.jar" />  
              <include name="**/*.xml" />  
              <exclude name="**/*.sh1" />  
           fileset>  
       checksum>  
target>  



把生成好的sh1文件和jar、pom按照前面介绍的结构布局拷贝到apache的代码库中,当然你也可以直接拷到本地代码库中。


xml 代码
xml version="1.0" encoding="UTF-8"?>  
<project>  
    <modelVersion>4.0.0modelVersion>  
    <groupId>net.jeffreygroupId>  
    <artifactId>xxxartifactId>  
    <version>1.0version>  
    <dependencies>  
    dependencies>  
project>  

xml 代码
<dependencies>    
   <dependency>    
     <groupId>org.springframeworkgroupId>    
     <artifactId>springartifactId>    
      <version>2.0version>    
      <scope>compilescope>    
    dependency>    
dependencies>    

分享到:
评论

相关推荐

    在eclipse中不使用maven创建springboot工程所需jar包

    在Eclipse中创建Spring Boot项目时,通常推荐使用Maven或Gradle来自动化依赖管理,因为它们可以自动下载并管理这些jar包及其依赖关系。然而,如果你选择手动管理,确保正确地把这些jar包添加到项目的类路径中,以...

    在eclipse中使用maven(1).zip

    在Eclipse中使用Maven是Java开发者日常工作中的一项重要技能,Maven是一个强大的项目管理和构建工具,它简化了项目的依赖管理、构建流程以及版本控制。本教程将详细讲解如何在Eclipse环境中配置和使用Maven。 1. **...

    Maven在eclipse中的项目启动命令

    在Eclipse中使用Maven进行项目管理和构建时,了解这些基本概念和命令是非常重要的。它们不仅能够帮助开发者高效地构建和部署项目,还能有效避免一些常见的问题。通过正确设置Maven配置以及合理使用这些命令,可以极...

    Eclipse搭建MAVEN项目

    Eclipse 搭建 Maven 项目详解 Maven 是一个项目管理工具,能够帮助开发者更好地管理项目的依赖关系...通过以上步骤,可以在 Eclipse 中搭建 Maven 项目,使用 Maven 管理依赖关系和编译过程,提高开发效率和项目质量。

    eclipse使用maven整理文档.rar_captured7ne_eclipse mavenhelper_maven

    【标题】"eclipse使用maven整理文档"涵盖了在Eclipse集成开发环境中使用Maven进行项目管理和文档生成的实践知识。Maven是一个强大的Java项目管理工具,它通过配置文件(pom.xml)来管理项目的构建、依赖关系和文档...

    使用Eclipse构建Maven项目.pdf

    在使用Eclipse构建Maven项目的过程中,涉及到的知识点主要集中在Eclipse集成环境配置、Maven安装与配置、m2eclipse插件的使用等方面。以下是根据提供的文件内容详细展开的知识点: 1. Eclipse-jee的安装 - Eclipse...

    在Eclipse中Tomcat和Maven插件相互配合进行热部署

    这个过程涉及到了源码管理和自动化构建工具Maven,以及集成开发环境Eclipse中的服务器适配器Tomcat,它们共同助力实现项目的热部署,即代码修改后无需重启服务器即可看到更新效果。 首先,Maven是一个强大的项目...

    使用Eclipse构建Maven项目 配套示例项目源码

    通过以上步骤,你可以掌握在Eclipse中使用Maven构建和管理项目的基本操作。同时,"testweb_svn"源码提供了一个实际的案例,帮助你加深对Maven项目配置和Web开发的理解。在实践中不断探索和学习,你将更好地掌握Maven...

    Eclipse中Maven项目创建及相关操作

    在输入项目信息时,包括项目名称、集团包名等,你还可以通过`pom.xml`文件管理项目依赖。对于Web项目,你需要确保项目结构包括了`src/main/webapp`目录,并且`web.xml`配置文件正确设置,以避免编译错误。 如果在...

    m2eclipse插件_使用maven必备

    m2eclipse提供了一个直观的依赖图,帮助开发者查看和管理项目中的依赖关系。在项目浏览器中右键单击项目,选择"POM Editor",然后切换到"Dependency Hierarchy"视图,可以看到项目的依赖树。在这里,可以添加、删除...

    如何在eclipse jee中创建Maven project并且转换为Dynamic web project

    - 在`Libraries`选项卡中,确认Maven依赖已添加。如果没有,点击`Add Library`,选择`Maven Dependencies`并添加。 - 在`Source`选项卡中,检查`src/main/java`和`src/main/resources`是否已添加到源代码路径。 5...

    在eclipse中配置maven,新建springboot项目.zip

    本教程将详细讲解如何在Eclipse中配置Maven以及如何使用配置好的环境新建一个Spring Boot项目。 首先,让我们来了解下Maven和Spring Boot的基础知识: Maven是一个项目管理工具,它可以帮助开发者构建、管理和部署...

    m2Eclipse-Eclipse中Maven插件使用手册

    m2Eclipse作为一款在Eclipse平台上使用的Maven插件,极大地简化了开发者使用Maven进行项目管理的过程。它不仅提供了Maven项目的创建、构建等功能,还支持Pom.xml文件的图形化编辑,帮助用户更直观地理解和操作Maven...

    在eclipse中配置MAVEN

    在Eclipse中配置MAVEN可以方便地管理项目依赖关系,提高开发效率。 MAVEN的下载和配置 首先,需要下载MAVEN的安装包。MAVEN的官方下载地址是https://maven.apache.org/download.cgi。下载完成后,需要解压缩安装包...

    eclipse中Maven安装插件和maven.zip

    总结一下,Eclipse中的Maven插件让开发者能够方便地在IDE内管理Maven项目,而不用离开Eclipse去执行命令行操作。通过正确安装和配置插件,以及理解Maven的基本概念和操作,可以大大提高开发效率,减少项目管理的复杂...

    Eclipse整合Maven开发教程

    【Eclipse整合Maven开发教程】 Maven是一个强大的构建工具,尤其在Java开发领域中广泛使用,它负责项目的依赖管理、构建过程以及元数据...对于初学者来说,遵循本文的步骤,可以快速掌握在Eclipse中使用Maven的技巧。

    Eclipse使用Maven构建web项目视频教程

    3. **构建项目**:在Eclipse中,可以通过右键点击项目选择"Maven" -&gt; "Update Project"来更新项目配置,或者使用"Maven Build"来执行构建命令,如`clean install`。 4. **运行与调试**:在Eclipse中,可以配置Tomcat...

    使用Eclipse构建Maven项目

    最后,Eclipse中的Maven支持还包括对Maven profiles的管理,用于在不同的环境中使用不同的配置。此外,Maven的生命周期和插件系统允许扩展其功能,实现自定义的构建步骤。 总之,“使用Eclipse构建Maven项目”涉及...

    eclipse-maven3-plugin

    在安装了 **eclipse-maven3-plugin** 后,开发者可以更高效地管理项目依赖,简化构建流程,提高开发效率。同时,由于与 Apache Maven 3.3.9 的紧密结合,开发者可以充分利用 Maven 的广泛社区支持和丰富的插件生态...

    eclipse+ssm+maven最基本的demo含文档说明

    综上所述,这个项目提供了一个全面的示例,展示了如何在Eclipse环境下使用SSM框架和Maven构建一个Java Web应用。开发者可以通过阅读文档,学习如何配置开发环境,理解SSM框架之间的协作,以及如何利用Maven进行项目...

Global site tag (gtag.js) - Google Analytics