当前位置: 首页 > 知识库问答 >
问题:

Eclipse中的设置会传播到Maven吗?

锺伟志
2023-03-14

我已经在Eclipse中导入了一个Maven项目,但我仍然不确定Maven和Eclipse是如何真正协同工作的。

例如,当我将源文件夹从一个模块复制并粘贴到另一个模块时,Eclipse刚刚更改了我的. classpath文件,试图解决Google App Engine Modules能否像Maven Modules一样共享源代码?

Eclipse将此添加到了。类路径当我复制/粘贴源代码时,我希望在模块/项目之间复制:

<classpathentry kind="src" path="/nbsocialmetrics-backend"/>

Eclipse没有对我的POM进行任何更改。但是xml文件。月食似乎对这一点很满意。它为我更改了类路径,我没有任何相关项目/模块的编译警告。但是我的项目顶层的mvn clean install抱怨缺少很多依赖项。

假设命令行Maven命令(如mvn清洁安装)不会查看Eclipse. classpath文件,这是否正确?

Maven不只是依靠以下几点吗?

  1. 波姆。xml文件
  2. 存储库,如Maven中央存储库
  3. 传递给mvn的命令行参数
  4. 源代码/资源等(你想要构建的东西,而不是元数据,比如.classpath)

如果我的理解是正确的,为什么Eclipse允许我对我导入的Maven项目进行不正确的更改?哪些类型的Eclipse更改实际上是安全的——换句话说,当我在命令行执行mvn清洁安装时,我在Eclipse中进行的哪些类型的更改实际上会得到反映?

作为另一个例子,我试图在我的一个模块中使用Eclipse的WindowBuilder编辑器来处理一些GWT(J2EE/Maven意义上的“模块”,而不是GWT意义上的“模块”)。由于我希望确保有正确版本的WindowsBuilder来解决导入Eclipse的Maven项目出现的错误“找不到GWT模块”,我应该查看Eclipse插件设置还是Maven POM。xml设置?Eclipse,在这种情况下,对吗?

谢谢你帮我理解。

共有2个答案

羊浩广
2023-03-14

您必须选择一种或另一种策略,Eclipse在大多数情况下不会写入POM文件,您应该只依赖POM文件,因为这样您的项目几乎没有IDE,如果您选择Maven来管理构建和依赖项,请使用它。

你是正确的,做mvn清洁安装不会关心你的类路径文件。

我已经有一段时间没有使用Eclipse了(我建议您使用IntelliJ IDEA),但我认为解决问题的一种方法是在POM文件中添加依赖项,然后将这些更改添加到类路径中,而不是反过来。

海鸣
2023-03-14

假设命令行Maven命令(如mvn清洁安装)不会查看Eclipse. classpath文件,这是否正确?

是的,Maven不使用此文件。Eclipse仅使用该文件来保存有关项目的信息,即源目录及其对应的类或输出目录,以及类路径条目。

Maven依赖于您提到的资源:POM文件、存储库等。

为什么Eclipse允许我对导入的Maven项目进行不正确的更改?

即使项目是Maven项目,Eclipse仍然允许用户以不遵循标准Maven约定的方式更改项目的构建设置。例如,模块中的默认源代码位于src/main/java下,但没有任何东西阻止您右键单击该模块,并在构建路径设置中添加不符合此标准的源文件夹(不用说,这不是一件好事)。

Eclipse中的Maven项目只是一个配置为使用Maven插件的项目,该插件支持使用Maven进行依赖关系管理(例如,它也可以同时是Groovy项目)。

当我在命令行执行mvn clean install时,我在Eclipse中所做的哪些类型的更改实际上会得到反映?

就Maven而言,所有信息都存在于POM中。因此,当从命令行使用时,只有对POM所做的更改(添加依赖项或插件)才会影响Maven的行为。

由于我希望确保有正确版本的WindowsBuilder来解决导入Eclipse的Maven项目出现的错误“找不到GWT模块”,我应该查看Eclipse插件设置还是Maven POM。xml设置?Eclipse,在这种情况下,对吗?

是的,应该是Eclipse而不是Maven。Maven插件与WindowBuilder功能无关。项目可以是Maven项目,同时也可以配置为GWT项目。

 类似资料:
  • 我在groupId mortbay中使用jetty-maven-plugin,但我想使用最后的Jetty版本9。 正如我们所看到的,mortbay没有提供jetty Version9http://repo2.maven.org/maven2/org/mortbay/jetty/jetty-maven-plugin/,但是eclipse是的。 不再可用。 谁能解释我如何使用org.eclipse.j

  • 我有以下问题,无法在其他地方找到任何答案: 我正在使用https://github.com/joelittlejohn/embedmongo-maven-plugin用于在预集成测试阶段启动mongo db服务器,然后在指定端口上运行与mongo db交互的集成测试。然而,对于插件的原始版本,我不得不在插件配置中硬编码端口,这可能会与在同一台机器上运行的其他进程发生冲突,并有效地拒绝使用相同端口的

  • 我试图在Eclipse中使用Maven建立一个maven项目。到目前为止我所尝试的: 通过创建新的Maven项目并选择组织,在Eclipse中创建项目。编码室。版本2.7中的mojo gwt maven插件。0 问题:-Eclispe没有给我提供任何运行配置 所以我去了项目的属性,去了谷歌标签,把Eclipse指向webapp文件夹,并检查了上面写着“使用谷歌网络工具包”的chedkbox。 在那

  • 本文向大家介绍Eclipse中maven的配置详解,包括了Eclipse中maven的配置详解的使用技巧和注意事项,需要的朋友参考一下 1. 需要准备:apache-maven-3.2.3.zip包    Repository.rar本地仓库   以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持呐喊教程。

  • 主要内容:m2eclipse,在 Eclipse 中配置 Maven,修改本地仓库位置,在 Eclipse 中使用 Maven前面所涉及的 Maven 项目结构和代码都十分的简单,即使是使用最简单的文本编辑器也能够很快就能完成。但在实际的开发过程中,我们所涉及的 Maven 项目往往要复杂得多,此时我们就需要借助 IDE(集成开发环境) 来帮助我们完成开发工作。 当今最流行的 Java IDE 主要有 2 种:Eclipse 和 IntelliJ IDEA,其中 eclipse 是完全免费的,用

  • 问题内容: 我的项目有3个Maven模块,它们是由nodejs脚本构建的。 现在,我想与Jenkin和Nexus集成。我的Jenkin构建配置如下所示: 我还在“ 构建”* 部分的“ 提供配置文件 构建”步骤中添加了我的Maven ,但这没有用。Maven仍然失败,无法解析我的Nexus回购中的依赖项。 *** 在我的本地专家中,我为Nexus存储库和另一个存储库添加了一些配置。 你能把这种情况告