【问题标题】:M2E Removes My Source Directory?M2E 删除我的源目录?
【发布时间】:2012-04-21 19:18:55
【问题描述】:

我有一个在 Eclipse 中构建的现有库,并已使用 m2e 将 Maven 特性添加到我的项目中以添加依赖项。当我将其转换为 Maven 项目时,我现有的源目录(和我的 bin)成为普通文件夹。是否有一个原因?我是 Maven 新手,所以我可能做错了什么,只是不确定是什么......

我的项目结构如下:

workspace
  project
    src (in build path)
    resources (in build path)
    bin (output dir)

我尝试了“mvn eclipse:eclipse”并右键单击项目 -> 配置 -> 转换为 Maven 项目,并且都从我的构建路径中删除了我的 src 和资源文件夹,并且在将结构更改为以下之后,更改了输出到目标/测试用例。即使我手动调整构建路径和输出,我的依赖项也无法解决。

workspace
  project
    src (no longer in build path)
    resources (no longer in build path)
    bin  (no longer output)
    target (new output dir)
      test-cases (empty)

【问题讨论】:

    标签: maven m2e


    【解决方案1】:

    我认为您在使用 Eclipse(没有 Maven)时具有以下结构:

    /workspace
      /project1
        .project
        /src
        /bin
    

    但是 Maven 想使用下面的结构

    /workspace
      /project1
         .project
         pom.xml
         /src
            /main
               /java
               /resources
            /test
               /java
         /target
            /classes
            /test-classes
    

    等等。所以很正常,文件夹src不再是Eclipse的直接源文件夹,但是现在有src/main/javasrc/main/resources,...

    因此,在开始时从一个新的 Maven 项目开始,并将您的原始源移动到它们应该属于的目录会更容易。 Maven 有着悠久的传统,即“约定优于配置”,偏离这一点是可能的。查看"Handling unconventional source directory ..." 的答案以解决此问题。

    【讨论】:

    • 问题是,这已经在源代码控制中,所以创建一个全新的项目将非常麻烦。有什么办法可以设置到位吗?
    • 你不能将文件夹/文件移动到新文件夹等中并将旧结构转移到新结构吗?
    • 所以我尝试了 "mvn eclipse:eclipse" 和 Configure -> Convert to Maven... 并且都离开了我的项目而没有源文件夹。即使我手动添加它们,我的 Maven 引用也无法解析(即 log4j)。有什么想法吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-05-02
    • 2017-08-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-08
    相关资源
    最近更新 更多