导入的Maven项目到Eclipse 3.7(m2e 1.0)但是src / main / java没有显示为source-package

时间:2012-07-04 07:29:13

标签: eclipse maven m2e

我有一个maven(3.0.4)多模块构建项目,它可以在命令行上完美运行。

mvn clean package

建立成功。

我试图将该项目导入Eclipse

enter image description here

m2e 1.0。

enter image description here

但是在它准备好之后我看不到包文件夹,也没有src文件夹的图标(比如src / main / java等)。

enter image description here

但我希望看到如下内容:

enter image description here

是否有人暗示可能出现什么问题?或想法在哪里寻找?

更新

将它煮沸后可能是因为使用Java 1.7引起的。编译器,我已经配置如下:

 <pluginManagement>
      <plugins>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-compiler-plugin</artifactId>
          <version>2.5.1</version>
          <configuration>
            <source>${maven.compiler.source}</source>
            <target>${maven.compiler.target}</target>
            <executable>C:/Programme/Java/jdk1.7.0_05/bin/javac</executable>
            <fork>true</fork>
          </configuration>
        </plugin>
        ...

有人在这方面有经验吗?

3 个答案:

答案 0 :(得分:3)

看起来您的项目没有Java特性。您可以通过右键单击项目并转到

来更改此设置

属性 - &gt;项目方面 - &gt;转换为分面形式

从那里你可以添加一个Java facet,它可以完成这项工作。我经常发现这样的事情,更容易手动编辑Eclipse的.project.classpath文件(确保在你做之前备份它们!)。您可能想要检查项目的.project文件是否包含以下内容:

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

然后确保您的.classpath看起来像这样:

<?xml version="1.0" encoding="UTF-8"?>
<classpath>
    ...
    <classpathentry kind="src" output="target/classes" path="src/main/java"/>
    <classpathentry excluding="**" kind="src" path="src/main/resources"/>
    <classpathentry kind="src" output="target/test-classes" path="src/test/java"/>
    <classpathentry excluding="**" kind="src" output="target/test-classes" path="src/test/resources"/>
    <classpathentry kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER"/>
    <classpathentry kind="output" path="target/classes"/>
</classpath>

一旦你准备好了所有这些东西,就像Michal说的那样更新你的项目配置并刷新。

答案 1 :(得分:3)

经过长时间的摆弄,我发现了解决这个问题的问题:

我的配置中maven-compiler-plugin(2.5.1)的生命周期映射错误导致了这些问题。删除后,它按预期工作,无需手动更改构面,只需导入项目即可。

答案 2 :(得分:0)

在你的日食中,它可能指向JRE而不是JDK。 转到window->preference->java->Installed JRE。在此处添加JDK,并将其设置为默认值。 您可能需要重新启动eclipse。