2

目前我已经强制我将我的项目导入到 eclipse 中。将我的项目导入 Eclipse 后,我右键单击该项目去配置并转换为 Maven 项目。完成所有这些之后,我没有自动完成代码的工作,也没有 ctrl+click 工作。

系统规格:

  • 操作系统:Windows 7 x64
  • 内存:8GB
  • CPU:英特尔酷睿 i5
  • 硬盘:128GB 固态硬盘
  • Eclipse 版本:Juno 4.2 JavaEE
  • Maven m2e 版本:1.1.0
  • Perforce 版本:2012.2.486944

尝试修复

  1. 我注意到,当我右键单击我的项目并希望转到 Java Build Path 时,它不存在。
  2. 在我的右键菜单属性和构建器下,我只有“Maven Project Builder”
  3. 我试图在文件中添加正确<buildCommand>的 java builder 和正确<natures>.project。这并不能解决我的问题,但确实添加了我在 1 中看不到的 Java 构建路径。(下面是我未更改的 .project 文件)
  4. 我已经导航到.metadata>.plugins并删除了org.eclipse.jdt.coreEclipse 重建它的索引。

尝试 ctrl+单击自动完成或右键单击>参考>工作区时收到错误

资源不在 Java 项目的构建路径上

.project文件

    <?xml version="1.0" encoding="UTF-8"?>
    <projectDescription>
        <name>project</name>
        <comment></comment>
        <projects>
        </projects>
        <buildSpec>
            <buildCommand>
                <name>org.eclipse.m2e.core.maven2Builder</name>
                    <arguments>
                    </arguments>
            </buildCommand>
        </buildSpec>
        <natures>
            <nature>org.eclipse.m2e.core.maven2Nature</nature>
        </natures>
    </projectDescription>

有没有我忽略的简单步骤,或者我忘记了做的步骤?关于这个问题的任何帮助都会很棒。

(*我已经搜索过与 ctrl+click 和自动完成相关的问题,但我发现的解决方案都没有帮助,而且似乎没有一个与 eclipse+perforce+maven 问题相匹配,但如果此主题已涵盖在另一个帖子

4

2 回答 2

2

好吧,这就是我所做并发现的。

我从 eclipse 4.2 EE 的新副本重新开始,并重新下载了我需要的所有插件:m2e 和 perforce

如果你有一个扁平的 Maven 项目

  1. 从perforce导入项目,右键项目>配置>转换为Maven项目
  2. 将平面项目转换为 Maven 项目索引了所有允许 ctrl+click/ctrl+space 功能的东西

如果你有一个多模块 Maven 项目

  1. 使用 perforce 插件将项目签出到您的工作区
  2. 将所述项目作为现有 Maven 项目导入
  3. Eclipse/Maven 将自动找到父目录下的所有 pom 并构建/索引您的工作区
  4. 之后与上面相同的 ctrl+click/ctrl+space 功能应该可以工作

我的疏忽是我遇到问题的项目我没有意识到是一个多模块 maven 项目,并且从 perforce 导入它并尝试将父文件夹转换为 maven 项目并没有导致 maven 查看所有 pom父子目录。希望这可以帮助其他遇到此问题的人。

于 2012-08-03T18:27:04.810 回答
1

我使用 Perforce+Maven+Eclipse 的方式是首先将我的项目作为 Maven 导入,然后通过将其链接到我的 perforce 存储库来右键单击项目 > Team> Share Project。如果我不从一开始就直接将其作为 Maven 项目导入,我发现 Eclipse 无法使用 Maven 正确管理项目。

于 2012-08-02T20:48:09.763 回答