Java 日食+;Maven+;动态Web项目->;Maven覆盖部署程序集
摘要 在Eclipse中,当我“Maven->updateprojectconfiguration”时,“Maven依赖项”将从项目的“部署程序集”中删除 详细信息 我从一个预配置的Eclipse项目开始:文件->新建->动态Web项目->JavaServerFaceV2.0项目。为了删除“魔力”,我将其转换为一个Maven项目:配置->转换为Maven项目 pom.xml包含以下内容:Java 日食+;Maven+;动态Web项目->;Maven覆盖部署程序集,java,eclipse,jsf,maven,deployment,Java,Eclipse,Jsf,Maven,Deployment,摘要 在Eclipse中,当我“Maven->updateprojectconfiguration”时,“Maven依赖项”将从项目的“部署程序集”中删除 详细信息 我从一个预配置的Eclipse项目开始:文件->新建->动态Web项目->JavaServerFaceV2.0项目。为了删除“魔力”,我将其转换为一个Maven项目:配置->转换为Maven项目 pom.xml包含以下内容: <build> <finalName>jsf-facelets-tutori
<build>
<finalName>jsf-facelets-tutorial</finalName>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<configuration>
<webXml>WebContent/WEB-INF/web.xml</webXml>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.6</source>
<target>1.6</target>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>javax.el</groupId>
<artifactId>el-api</artifactId>
<version>1.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.0</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.myfaces.core</groupId>
<artifactId>myfaces-api</artifactId>
<version>2.0.5</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.apache.myfaces.core</groupId>
<artifactId>myfaces-impl</artifactId>
<version>2.0.5</version>
<scope>runtime</scope>
</dependency>
</dependencies>
我建议您转到Eclipse3.7.x(Indigo),它对m2e有更好的支持,还允许您使用Maven集成的WTP(单独安装),这将使事情变得更简单。我想你的大部分问题应该通过升级到Indigo来解决 安装链接: 另请参见此处: 编辑
将您的web资源放在WebContent下,然后将其作为目录添加到WAR插件中可能是一个解决方案。干净的方法是将它们放在
src/main/resources
或src/main/webapp
下,它们应该自动包含在WAR文件中WebContent
不是Maven的标准目录之一。您使用的是哪一版本的Eclipse和M2Eclipse?Eclipse版本:3.6.2 Eclipse m2e版本:1.0.1 Apache Maven版本:2.2.1我已经更新了我的答案,以解决您关于WebContent目录的问题。谢谢,我会尝试一下,完成后再联系您(下载和安装所有东西需要一点时间,然后开始新项目)。有一个问题,关于“M2EclipseWTP”插件,我还需要使用BuildHelperMaven插件(maven插件)和M2eBuildHelperConnector(Eclipse)吗?现在已安装。使用此新配置,您建议使用什么方法创建项目?从archetype创建命令行maven,或使用Eclipse向导?我总是通过从另一个项目复制,或从Eclipse中使用archetype向导来创建一个小的基本POM。使用我知道的新结构,在Web部署Assem中可以看到这一点我看到了4个条目。((1))/src/main/java->WEB-INF/classes[OK]((2))/src/main/webapp->/[html、WEB.xml等?]((3))Maven依赖项->WEB-INF/lib[OK]((4))/target/m2e wtp/WEB资源->/[这是干什么用的?]在使用m2e和m2e WTP插件处理WTP项目时,Faces配置编辑器是否仍然打开?我的编辑器不再打开,我一直无法找到原因()
<build>
<finalName>jsf-facelets-tutorial</finalName>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.6</source>
<target>1.6</target>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>javax.el</groupId>
<artifactId>el-api</artifactId>
<version>1.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.0</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.myfaces.core</groupId>
<artifactId>myfaces-api</artifactId>
<version>2.0.5</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.apache.myfaces.core</groupId>
<artifactId>myfaces-impl</artifactId>
<version>2.0.5</version>
<scope>runtime</scope>
</dependency>
</dependencies>