`

用eclipse的m2eclipse插件,设置maven项目的依赖关系

阅读更多
在使用maven之前,对于把一个项目拆分为多个工程的情况,需要手工在build path中设置Projects



在使用了maven之后,就不需要手工设置,只要在pom中设置了dependency,m2eclipse插件会自动设置为依赖工程,pom文件:
<dependency>
			<groupId>${project.groupId}</groupId>
			<artifactId>task-common</artifactId>
			<version>${project.version}</version>
		</dependency>

效果如下图:



不过我今天遇到一个情况,就是明明已经在pom中配置了依赖,但是m2eclipse就是不设置依赖工程,最后发现原来是需要在m2eclipse提供的右键菜单中做一个操作:

选择Maven-->Enable Workspace Resolution



打开这个选项以后,在Workspace中配置的工程才会作为依赖工程,如果disable之后,则会被视为静态的依赖jar包

效果如图:



对比之前的效果图,可以看到,task-common已经不再是依赖工程,取而代之,是一个静态的task-common.jar

这样有2个问题,一个是必须先把task-common.jar放入本地仓库或者远程仓库,否则即使eclipse中有task-common工程,还是会报错:
Missing artifact com.huawei.inoc.wfm.task:task-common:jar:0.0.1-SNAPSHOT:compile

另一个问题是,以静态jar包的方式依赖的话,那么task-common里的改动,就无法第一时间在task-sla里体现了,所以还是应该把工程依赖的选项打开。

不过这样操作以后,经常会发生一个怪异的现象:此时用命令行进行maven构建是没问题的,但是工程在eclipse里显示红叉,需要设置Java Compiler重新编译一次才能解决。我没找到为什么,怀疑是m2eclipse的一个BUG
  • 大小: 47.4 KB
  • 大小: 63.9 KB
  • 大小: 66.8 KB
  • 大小: 69.1 KB
分享到:
评论
3 楼 水水水水 2016-02-23  
maven依赖引用它能关联到项目,但是如果我加上一些jar包,它就变成关联静态的jar包了。
例如加上<dependency>
<groupId>com.github.sgroschupf</groupId>
<artifactId>zkclient</artifactId>
<version>0.1</version>
</dependency>
或者一些其他包,就不能关联项目了;
2 楼 sendreams 2013-07-26  
lz的实践性文章不错,是理论的一个很好延伸,支持。
1 楼 kyfxbl 2012-09-17  
补充:在另外一个贴中找到了解决办法

原帖地址:http://blog.csdn.net/kunga0814/article/details/7414290

该问题的特征是,使用Eclipse集成Maven开发项目,执行clean命令后,原来编译的结果被清掉,然后在编辑、编译源代码或运行时报“XXX(类) cannot be resolved to a type”错误,Eclipse的Package Explorer窗口出现大量的红叉。这种现象是被IDE之外的命令清除了结果,IDE不能找到编译文件。

解决的办法是:Eclipse菜单中找到Project -> Build automatically,并确定是勾选的,其次点击Project -> Clean…菜单命令项,在弹出的对话框中找到工程,如果是多个工程依赖开发,可以选择“Clean all projects”,然后点击“OK”按钮。此过程Eclipse会清除项目中编译的.class文件,同时重新编译工程(类似于jBuild中的Rebuild功能)。

我们知道,Maven可以托管项目的整个生命周期,它从验证、源代码管理、编译、测试、打包、分发、部署(安装)整个系列过程都会参与。而IDE也可以完成这些功能,因此两者之间会出现重复却不能智能协作的操作,Maven清除了Eclipse编译结果,Eclipse则以红叉叫嚣。

相关推荐

    m2eclipse插件_使用maven必备

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

    eclipse中Maven安装插件和maven.zip

    Maven是一个基于项目对象模型(Project Object Model,POM)的项目管理工具,它通过XML文件来描述项目的配置信息,包括项目的构建过程、依赖关系、构建目标等。Maven利用中央仓库来存储各种开源库,使得开发者无需...

    m2eclipse eclipse maven插件

    m2eclipse是Eclipse集成开发环境(IDE)中的一个非常重要的插件,它将Apache Maven的构建和项目管理功能无缝地整合到了Eclipse中。Maven是一个强大的项目管理和依赖管理工具,广泛用于Java应用程序的构建、管理和...

    m2eclipse maven插件

    m2eclipse不仅支持Maven的标准生命周期,还可以与许多第三方Maven插件配合,如maven-compiler-plugin、maven-surefire-plugin等,使得在Eclipse中可以便捷地使用这些插件的功能。 8. **集成Eclipse特性** m2...

    m2Eclipse-Eclipse中Maven插件使用手册

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

    配合m2eclipse,改造tomcatPluginV321根据maven的依赖自动热部署

    标题中的“配合m2eclipse,改造tomcatPluginV321根据maven的依赖自动热部署”涉及了两个主要的开发工具集成:M2Eclipse(Maven插件)和Tomcat Plugin V321,以及它们如何协同工作以实现基于Maven依赖的自动热部署。...

    eclipse的maven插件m2eclipse 1.6.2 目前最新版

    m2eclipse 1.6.2是Eclipse中用于Maven项目管理的重要插件,它简化了Maven在IDE中的使用,提供了强大的依赖管理和项目构建功能。对于Java开发者来说,它是提高开发效率和协作的必备工具。通过持续更新和优化,m2...

    eclipse安装maven插件需要包

    5. **测试Maven插件**: 创建一个新的Maven项目,如果Eclipse能够自动生成`pom.xml`文件并正常识别依赖,那么Maven插件就已成功安装和配置。 总结,离线安装Eclipse的Maven插件是一种在无网络或网络不稳定情况下的...

    eclipse-maven插件

    M2Eclipse(Maven Integration for Eclipse)是Eclipse中的一个插件,它允许开发者直接在Eclipse环境中使用Maven的功能。这对于那些习惯于Eclipse工作流的开发者来说,是一个极大的便利,因为无需离开IDE就可以完成...

    eclipse安装maven插件,处理无Maven Pom editor打开方式问题

    在Eclipse中安装Maven插件,可以方便开发者在IDE内进行Maven项目的操作,解决无法用Maven Pom editor打开pom.xml文件的问题。以下是对这个主题的详细说明: 1. **Maven Pom Editor**: Maven的pom.xml文件是项目...

    eclipse的maven插件

    Maven能够自动解决项目的依赖关系,构建过程,以及发布工件。它通过配置POM.xml文件,可以自动化执行构建任务,如下载依赖、编译源码、运行测试、打包、部署等。 二、Eclipse与Maven的结合 Eclipse作为一个强大的...

    eclipse安装maven插件

    在IT行业中,Maven是一个广泛使用的项目管理和综合工具,它主要负责构建、依赖管理和项目信息管理。Eclipse作为流行的Java集成开发环境(IDE),通过安装Maven插件,可以让开发者在Eclipse内部方便地进行Maven项目的...

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

    通过集成Maven插件m2eclipse,Eclipse可以提供无缝的Maven支持。 首先,我们需要确保Eclipse已经安装了m2eclipse插件。如果尚未安装,可以通过Eclipse Marketplace搜索并添加此插件。m2eclipse使得在Eclipse中创建...

    使用Eclipse构建Maven项目.pdf

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

    myecplice/ecplice maven插件m2eclipse_for_eclipse_3.3

    1. 自动化构建:m2eclipse能够自动解析POM.xml文件,处理项目的依赖关系,执行clean、install、test等Maven目标。 2. 项目配置:在Eclipse中直接编辑Maven的配置文件,如POM.xml,无需离开IDE。 3. 集成WTP(Web ...

    Eclipse Maven插件,SVN插件

    Maven是一个项目管理和综合工具,它可以帮助开发者管理项目的构建、依赖关系以及报告。在Eclipse中,Maven插件,通常被称为m2e(M2Eclipse),是将Maven功能集成到IDE中的关键组件。m2e使得用户可以直接在Eclipse中...

    常用eclipse插件更新地址及MAVEN设置

    标题 "常用eclipse插件更新地址及MAVEN设置" 涉及到的是关于Eclipse IDE的插件管理和Maven的配置,这是两个在软件开发中至关重要的环节。Eclipse是一个广泛使用的Java集成开发环境,而Maven是项目管理和构建工具,...

    eclipse+egit安装使用+maven安装项目搭建

    Eclipse + EGit + Maven 的集成使用是现代Java开发中常见的工具组合,它们各自负责不同的任务,协同工作以实现高效且版本控制良好的项目管理。以下将详细介绍这些工具的安装和配置。 1一、Maven 安装 Maven 是一个...

    maven Integration for Eclipse

    2. **依赖管理**:m2eclipse自动处理项目依赖关系,通过Maven中央仓库下载所需的jar包,并能自动解决依赖冲突。 3. **构建生命周期集成**:在Eclipse内部,可以通过右键菜单直接运行Maven的生命周期阶段,如clean、...

Global site tag (gtag.js) - Google Analytics