教程 > maven 中文教程 > 阅读:29

maven web 应用——迹忆客-ag捕鱼王app官网

本章节我们将学习如何使用版本控制系统 maven 来管理一个基于 web 的项目,如何创建、构建、部署已经运行一个 web 应用。

创建 web 应用

我们可以使用 maven-archetype-webapp 插件来创建一个简单的 java web 应用。

打开命令控制台,进入到 /workspace/java 文件夹,然后执行以下的 mvn 命令:

$ mvn archetype:generate -dgroupid=com.companyname.automobile -dartifactid=trucks -darchetypeartifactid=maven-archetype-webapp  -dinteractivemode=false

执行完后 maven 将开始处理,并且创建完整的于java web 项目的目录结构。

[info] scanning for projects...
[info]
[info] ------------------< org.apache.maven:standalone-pom >-------------------
[info] building maven stub project (no pom) 1
[info] --------------------------------[ pom ]---------------------------------
[info]
[info] >>> maven-archetype-plugin:3.2.1:generate (default-cli) > generate-sources @ standalone-pom >>>
[info]
[info] <<< maven-archetype-plugin:3.2.1:generate (default-cli) < generate-sources @ standalone-pom <<<
[info]
[info]
[info] --- maven-archetype-plugin:3.2.1:generate (default-cli) @ standalone-pom ---
[info] generating project in batch mode
...
[info] ----------------------------------------------------------------------------
[info] using following parameters for creating project from old (1.x) archetype: maven-archetype-webapp:1.0
[info] ----------------------------------------------------------------------------
[info] parameter: basedir, value: /workspace/java
[info] parameter: package, value: com.companyname.automobile
[info] parameter: groupid, value: com.companyname.automobile
[info] parameter: artifactid, value: trucks
[info] parameter: packagename, value: com.companyname.automobile
[info] parameter: version, value: 1.0-snapshot
[info] project created from old (1.x) archetype in dir: /users/liuhanzeng/workspace/java/trucks
[info] ------------------------------------------------------------------------
[info] build success
[info] ------------------------------------------------------------------------
[info] total time:  10.962 s
[info] finished at: 2022-03-04t17:02:31 08:00
[info] ------------------------------------------------------------------------

执行完后,我们可以在 /workspace/java 文件夹下看到 trucks 项目,查看项目的目录结构:

maven web应用

maven 目录结构是标准的,各个目录作用如下表所示:

文件夹结构 描述
trucks 包含 src 文件夹和 pom.xml 文件。
src/main/webapp 包含 index.jsp 文件和 web-inf 文件夹.
src/main/webapp/web-inf 包含 web.xml 文件
src/main/resources 包含图片、properties资源文件。

pom.xml 文件代码如下:


   4.0.0
   com.companyname.automobile
   trucks
   war
   1.0-snapshot
   trucks maven webapp
   http://maven.apache.org
   
      
         junit
         junit
         3.8.1
         test
      
   
   
      trucks
   

接下来我们打开 /workspace/java/trucks/src/main/webapp 文件夹,可以看到一个已经创建好的 index.jsp 文件,代码如下:


   
      

hello world!


构建 web 应用

打开命令控制台,进入 /workspace/java/trucks 目录,然后执行下面的以下 mvn 命令:

$ mvn clean package

maven 将开始构建项目:

[info] scanning for projects...
[info]
[info] -----------------< com.companyname.automobile:trucks >------------------
[info] building trucks maven webapp 1.0-snapshot
[info] --------------------------------[ war ]---------------------------------
[info]
[info] --- maven-clean-plugin:2.5:clean (default-clean) @ trucks ---
[info]
[info] --- maven-resources-plugin:2.6:resources (default-resources) @ trucks ---
[warning] using platform encoding (utf-8 actually) to copy filtered resources, i.e. build is platform dependent!
[info] copying 0 resource
[info]
[info] --- maven-compiler-plugin:3.1:compile (default-compile) @ trucks ---
[info] no sources to compile
[info]
[info] --- maven-resources-plugin:2.6:testresources (default-testresources) @ trucks ---
[warning] using platform encoding (utf-8 actually) to copy filtered resources, i.e. build is platform dependent!
[info] skip non existing resourcedirectory /workspace/java/trucks/src/test/resources
[info]
[info] --- maven-compiler-plugin:3.1:testcompile (default-testcompile) @ trucks ---
[info] no sources to compile
[info]
[info] --- maven-surefire-plugin:2.12.4:test (default-test) @ trucks ---
[info] no tests to run.
[info]
[info] --- maven-war-plugin:2.2:war (default-war) @ trucks ---
...
[info] packaging webapp
[info] assembling webapp [trucks] in [/workspace/java/trucks/target/trucks]
[info] processing war project
[info] copying webapp resources [/workspace/java/trucks/src/main/webapp]
[info] webapp assembled in [21 msecs]
[info] building war: /workspace/java/trucks/target/trucks.war
[info] web-inf/web.xml already added, skipping
[info] ------------------------------------------------------------------------
[info] build success
[info] ------------------------------------------------------------------------
[info] total time:  1.056 s
[info] finished at: 2022-03-04t17:08:01 08:00
[info] ------------------------------------------------------------------------

部署 web 应用

打开 /workspace/java/trucks/target 文件夹,找到 trucks.war 文件,并复制到你的 web 服务器的 web 应用目录,然后重启 web 服务器。

测试 web 应用

访问以下 url 运行 web 应用:

http://localhost:8080/trucks_war/

maven web应用验证结果

查看笔记

扫码一下
查看教程更方便
网站地图