Maven没有编译类,war文件中没有类文件
我将我的项目转换为maven。 我在war文件中看到没有可用的类文件。
下面是pom.xml和项目结构。
4.0.0 RetailProducts RetailProducts 0.0.1-SNAPSHOT war RetailProducts com.sun.faces jsf-api 2.1.7 com.sun.faces jsf-impl 2.1.7 javax.servlet jstl 1.2 javax.servlet servlet-api 2.5 javax.servlet.jsp jsp-api 2.1 com.sun.el el-ri 1.0 JavaServerFaces org.apache.maven.plugins maven-compiler-plugin 2.3.1 1.6 1.6 org.apache.maven.plugins maven-war-plugin 2.1.1 <!-- section added to pick up the WEB-INF/web.xml inside WebContent --> WebContent
项目结构
从我的角度来看,您的项目结构并不像maven所期望的那样。
为了解决您的问题,请执行以下操作:
- 首先将您的软件包retail.web.mbean重命名为main.java.retail.web.mbean (在您的软件包仍称为retail.web.mbean的过程之后),这将创建maven所需的文件夹结构。
- 右键单击项目Maven>更新项目配置。
在此过程之后,您将拥有与启动项目之前相同的结构,但maven将知道在何处查找源代码。
此外,您可以使用以下结构创建资源文件夹和测试文件夹:
Project src main java resources test java resources
这将是标准的maven项目结构。
默认情况下,Maven希望Java源代码位于src / main / java中,但您的项目结构中包含src中的源代码。 我建议你遵守标准的Maven目录布局。
如果您不想这样做,那么您可以使用sourceDirectory构建设置,如下所示:
... ${basedir}/src
您可以在POM.xml中使用以下代码行来包含您已创建的war中的java文件。 Bydefault war在打包时排除.java文件。
src **/*.java