Eclipse 配置web工程的build

    最近在部署web项目得时候,不知道怎么搞了下,发现项目部署总是失败,找不到class文件,web.xml的位置也总是不对。然后研究了几个小时查了些资料才搞定,现在记录下来共享给大家。

    1.tomcat部署servlet的包结构

    tomcat是servlet的容器,它为servlet提供了通信的能力,servlet是tomcat容器的组件,实现了具体的web功能。那么要在tomcat中部署我们的servlet就需要遵守一些包结构,这个结构是所有javaWeb程序的标准,并由servlet API规范制定。给定的顶级目录名后其包结构 如下:

myapp

      -WEB-INF

          -class

          -lib

           web.xml

      -images

     -js

说明:images 和 js文件夹不是必须的,这些只是和项目相关的资源性文件,放置位置较为灵活。但是WEB-INF其结构是固定的,-class文件内是我们项目编辑的class文件和项目配置的配置文件,例如spring框架的xml文件等。lib文件夹中是我们项目的jar包,在WEB-INF或其子目录下,还必须包含一个项目部署的描述文件,也就是web.xml。

2.eclipse的build path

    右键单机项目->properties->java build path


在该配置文件中配置你的构建路径,一般我们会配置java代码的包和资源路径在这里。先看看我的项目结构:


此处我们要区分下folder和java resources ,一个是你项目中的实际开发目录,一个是构建时对应的目录。一般我们是将java代码放在src/main/java目录下,资源文件比如一些配置文件放置在src/main/resources目录下,而在src/main/webapp下放置我们的web配置文件,例如web.xml和默认的welcome- file。

现在我需要将我的src/main/java和src/main/resources放置在WEB-INF/class路径下,因为打包后的war包内必须是这个结构。设置如下


一般eclipse是给我们生成了路径的,不需要配置,如果需要配置,先点击add folder 选择项目路径,点击确定即可。添加后下面有五个选择项,有过滤条件的,有设置输出路径的。一般不需要都是默认的。

3.web Deployment Assembly 

    该配置页面是配置部署的,其实可以看到我在build path中配置的两项也在里面现在我需要配置下webapp即可。


如图,配置完成之后进行maven的install,你会发现打的包结构是ok的。

4.eclipse的帮助文档

在eclipse中选择help->help contents,打开如图页面:


在搜索框中输入java build path 会显示该配置项的使用帮助文档,当然你也可以搜索其他的帮助。


5.pom.xml的配置

    以上配置OK之后,发现用maven 命令进行打包里面没有class文件以及web.xml。然后查看了maven的执行日志,有no resource to compile 。然后在pom.xml中查看了build的配置项,<sourceDirectory> 的配置,发现并不是我的java文件路径,然后修改后编译class文件成功。接着发现包下面没有web.xml,然后查看了maven-war-plugin插件的配置项warSourceDirectory,将其改为我自己的web.xml的路径,然后打包,结果正确。



猜你喜欢

转载自blog.csdn.net/tony_java_2017/article/details/80839313
今日推荐