我正在研究一个简单的JSF 2应用程序,并且我在托管的bean中遇到了问题。我收到错误,说该bean无法找到,当我看到这场战争时,它没有任何编译的bean。在我的pom.xml我有以下几点:WAR文件中缺少编译类
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.traintrack</groupId>
<artifactId>test</artifactId>
<version>SNAPSHOT</version>
<packaging>war</packaging>
<name>test</name>
<build>
<outputDirectory>src/main/webapp/WEB-INF/classes</outputDirectory>
<plugins>
<plugin>
<groupId>org.jboss.as.plugins</groupId>
<artifactId>jboss-as-maven-plugin</artifactId>
<version>7.7.Final</version>
</plugin>
<plugin>
<artifactId>maven-war-plugin</artifactId>
<version>2.3</version>
<configuration>
<warSourceDirectory>${basedir}/WebContent</warSourceDirectory>
<failOnMissingWebXml>false</failOnMissingWebXml>
</configuration>
</plugin>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.0</version>
<configuration>
<source>1.6</source>
<target>1.6</target>
</configuration>
</plugin>
</plugins>
</build>
如果我从warSourceDirectory我得到我的战争文件项目的其余部分删除WebContent文件夹,但这似乎并不正确。该文件是由eclipse生成的,所以我会认为它没问题。在WEB-INF中有一个空的类文件夹。
我的项目文件夹结构为:
test
- src/
- sample/
- sampleBean.java
- WebContent/
- sample.xhtml
- WEB-INF/
- faces-config.xml
- web.xml
- META-IF/
但我的编译war文件的结构是这样的:
test
- sample.xhtml
- WEB-INF/
- faces-config.xml
- web.xml
- classes/
- META-IF/
什么都应该打包在我的战争文件和编译豆应该在哪里呢?
感谢
首先你为什么改变默认值。为什么不使用'src/main/webapp'?此外,它将是有用的,看到完整的POM文件... – khmarbaise
对不起,问题更新全POM。 Eclipse以这种方式生成文件。 – ewanc
我将添加一个编辑到这个问题,因为这适用于将eclipse项目更改为纯粹的maven项目 – anquegi