2012-03-17 87 views
1

我有一个多Maven项目是这样的:多Maven项目靛蓝

root/ 
----war 
----jar1 
----jar2 
----jar3 

战争使用jar1,jar2和jar3

当我运行一个“MVN干净安装”,编译后的战争很好,在我的服务器(jboss)中工作正常。 当我运行“mvn eclipse:eclipse”来生成我的eclipse配置时,构建工作正常,但是当我在eclipse(Indigo)中导入项目时,我在我的服务器上发布了我的战争,jar1,jar2,jar3未发布。

在war构建路径配置中,jar1,jar2,jar3配置良好。

enter image description here

但是,当我看的战争项目展开组件,我有一个错误:

enter image description here

这里是战争的项目我的生成.classpath文件:

<classpath> 
    <classpathentry kind="src" path="src/main/java" including="**/*.java"/> 
    <classpathentry kind="src" path="src/main/resources" excluding="**/*.java"/> 
    <classpathentry kind="output" path="target/classes"/> 
    <classpathentry kind="var" path="M2_REPO/javax/faces/jsf-api/1.2_13/jsf-api-1.2_13.jar" sourcepath="M2_REPO/javax/faces/jsf-api/1.2_13/jsf-api-1.2_13-sources.jar"> 
    <attributes> 
     <attribute value="jar:file:/Users/Kiva/java/repoMaven/javax/faces/jsf-api/1.2_13/jsf-api-1.2_13-javadoc.jar!/" name="javadoc_location"/> 
    </attributes> 
    </classpathentry> 
    <classpathentry kind="var" path="M2_REPO/javax/faces/jsf-impl/1.2_13/jsf-impl-1.2_13.jar" sourcepath="M2_REPO/javax/faces/jsf-impl/1.2_13/jsf-impl-1.2_13-sources.jar"/> 
    <classpathentry kind="var" path="M2_REPO/javax/servlet/servlet-api/2.5/servlet-api-2.5.jar" sourcepath="M2_REPO/javax/servlet/servlet-api/2.5/servlet-api-2.5-sources.jar"/> 
    <classpathentry kind="var" path="M2_REPO/javax/servlet/jsp/jsp-api/2.1/jsp-api-2.1.jar" sourcepath="M2_REPO/javax/servlet/jsp/jsp-api/2.1/jsp-api-2.1-sources.jar"/> 
    <classpathentry kind="var" path="M2_REPO/javax/servlet/jstl/1.2/jstl-1.2.jar" sourcepath="M2_REPO/javax/servlet/jstl/1.2/jstl-1.2-sources.jar"/> 
    <classpathentry kind="var" path="M2_REPO/javax/el/el-api/1.0/el-api-1.0.jar" sourcepath="M2_REPO/javax/el/el-api/1.0/el-api-1.0-sources.jar"> 
    <attributes> 
     <attribute value="/WEB-INF/lib" name="org.eclipse.jst.component.dependency"/> 
    </attributes> 
    </classpathentry> 
    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/> 
    <classpathentry kind="src" path="/jar1"/> 
    <classpathentry kind="src" path="/jar2"/> 
    <classpathentry kind="src" path="/jar3"/> 
    <classpathentry kind="var" path="M2_REPO/org/springframework/spring-core/3.0.5.RELEASE/spring-core-3.0.5.RELEASE.jar" sourcepath="M2_REPO/org/springframework/spring-core/3.0.5.RELEASE/spring-core-3.0.5.RELEASE-sources.jar"> 
    <attributes> 
     <attribute value="/WEB-INF/lib" name="org.eclipse.jst.component.dependency"/> 
    </attributes> 
    </classpathentry> 
</classpath> 

这里是我的eclipse插件配置:

<plugin> 
    <groupId>org.apache.maven.plugins</groupId> 
    <artifactId>maven-eclipse-plugin</artifactId> 
    <configuration> 
     <wtpversion>2.0</wtpversion> 
     </configuration> 
</plugin> 

我不明白为什么它在我的插件配置中是错误的,为什么eclipse没有找到罐子。

感谢您的帮助。

+0

尝试滴答在Java构建路径的三个jar依赖项目 - 订单和出口。 – yorkw 2012-03-18 20:28:47

+0

没有什么变化 – Kiva 2012-03-18 20:42:26

回答

0

我发现了这个问题。

jboss工具maven支持插件(使用jboss工具安装)会中断项目之间的链接。卸载它将解决问题。

这是可能的卸载只是Maven的支持,并保持休息;)

0

在这种情况下最重要的是:不要使用eclipse:eclipse了,而是使用m2e插件代替与Maven的关系。只需简单地进行项目导入即可。您应该通过Eclipse Marketplace为wtp添加m2e。之后,您应该能够将战争部署到服务器。

+0

我不喜欢m2eclipse,特别是自新版本以来。它不好管理一些插件,eclipse在m2eclipse中很慢。 – Kiva 2012-03-18 10:08:19