当前位置: 首页 > 面试题库 >

Maven更新项目在Eclipse中到底做什么?

暨弘毅
2023-03-14
问题内容

首先,我知道这个问题,但是我对此处未提供的详细信息感兴趣。

我看了一下m2eclipse的文档,发现它简陋。我唯一可以找到的相关部分是

或者,您可以从项目弹出菜单中运行“ Maven / Update project configuration”操作,该操作默认配置为运行“
process-resources”,也可以在同一首选项页面上对其进行更改。

但是我无法确定是否Update project configuration与相同Update project。我在浏览时发现的所有其他来源也不提供任何详细信息。

回顾一下,我想知道的是:

  1. 是否Update project可以运行任何Maven插件,如果可以,可以运行哪些插件以及具有哪些默认设置?
  2. 是否存在不是Maven插件的结果而是Eclipse内部的效果?
  3. 对项目结构有哪些修改?例如,Maven依赖项是否在本地复制?

问题答案:

Update项目是否运行任何Maven插件,如果运行,则使用哪个默认设置?

在更新项目期间,m2eclipse使用maven-
core构建项目对象模型。具体来说,Maven模型构建器用于构建项目模型。换句话说,它导致依赖关系解决,错误和警告通知。有关结果的更多信息,您可以检查org.apache.maven.project.ProjectBuildingResult

我不认为这会导致插件运行。我粗略地看了一下,第2阶段却未启用插件处理的更新。

是否存在不是Maven插件的结果而是Eclipse内部的效果?

是。请参阅答案的结尾部分。

对项目结构有哪些修改?例如,Maven依赖项是否在本地复制?

如果是本地意思,则在Eclipse工作区中则为否。Maven依赖关系显示对本地存储库的引用,该存储库通常是/.m2/repository。还可以根据Eclipse菜单“Windows-> Preference-> User Settings”的设置来解析存储库。

有关更多信息,可以从以下源代码(在eclipse中更新项目时调用的方法之一)开始,

public IStatus runInWorkspace(IProgressMonitor monitor) {
     ...... Unimportant stuff

    MavenUpdateRequest request = new MavenUpdateRequest(projects, offline,forceUpdateDependencies);
    Map<String, IStatus> updateStatus = configurationManager.updateProjectConfiguration(request, updateConfiguration,
    cleanProjects, refreshFromLocal, monitor);


...... Unimportant stuff

}

执行的不同任务的摘要(并非详尽无遗)

  1. 有关文件系统的项目已刷新。这类似于在Eclipse中的Java项目上调用refresh。
  2. 检查是否在工作空间中添加了依赖项之一。您必须已经注意到在maven依赖项下的本地项目文件夹。Junit和其他东西将使用此功能进行更改。
  3. 使用Maven核心库构建Maven项目模型。
  4. 生命周期映射刷新-M2Eclipse尝试将某些插件生命周期映射到Eclipse操作。
  5. 最后,使用Eclipse构建机制构建Project

另外,它还会在工作空间中使用父pom来做一些事情,在这种情况下这不是很重要。

更新项目配置主要与

  1. 添加Maven性质(.project文件中的org.eclipse.m2e.core.maven2Nature)-在您的上下文中不重要。
  2. 根据project.build.sourceEncodingmaven属性为项目设置默认字符集。
  3. Eclipse-插件生命周期处理。上面的第3点。


 类似资料:
  • 问题内容: “ Maven->更新项目… ”在Eclipse中做什么? 问题答案: 它将Eclipse项目设置与pom的设置同步。例如,如果您更改重要的插件设置(例如输出的Java版本),则会发现Eclipse将要求您更新项目,此后,项目中已配置的Java运行时将进行更改以反映您的Maven pom所指示的内容。 这是要记住的重要事项:Maven pom是这种项目设置的领导者。如果要更改设置,请尝

  • 首先,我知道这个问题,但我对其中没有提供的细节感兴趣。 我看了一下m2eclipse的留档,发现它不令人满意地简洁。我能找到的唯一相关的部分是 或者,您可以从项目弹出菜单中运行“Maven/Update project configuration”操作,该菜单默认配置为运行“process resources”,也可以在相同的首选项页面上更改。 但我无法确定是否与相同。我在浏览时发现的所有其他来源

  • “Maven”是什么意思-

  • 在Eclipse(在Windows上)中创建的新Maven项目使用默认的JRE系统库“J2SE-1.5”。 新项目 Maven->Maven项目 archtype:maven-archetype-quickstart 我想使用JDK 1.8.0,这是我在非Maven项目中的默认JDK。 我的JAVA_HOME变量设置为 C:\程序文件\java\jdk1.8.0_152

  • 在eclipse eclipse Java EE IDE下为Web开发人员更新Maven项目时,我遇到了这个错误。(版本:Kepler Service Release 2)在“更新Maven项目”过程中出现内部错误。路径必须包括项目和资源名称:/MyProjectName Thanks

  • 主要内容:新建 Maven 项目我们知道,m2eclipse 是一个在 Eclipse 中集成 Maven 的插件,通过该插件我们可以很轻松的在 Eclipse 中新建 Maven 项目,本节我们将讲解如何使用 Eclipse 新建 Maven 项目。 新建 Maven 项目 在 Eclipse 中新建 Maven 项目十分得简单,具体步骤如下。 1)在菜单栏中一次选择 File -->New --> Other,然后在搜索框中