基于Maven骨架创建JavaWeb项目过程解析

 更新时间:2020年08月19日 14:40:43   作者:emdzz  
这篇文章主要介绍了基于Maven骨架创建JavaWeb项目过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

IDEA版本:2020.1

骨架选项名称:

org.apache.maven.archetypes:maven-archetype-webapp

本项目的Maven坐标设置:

设置优先从本地获取骨架:

archetypeCatalog=internal

构建过程的控制台打印:

"C:\Program Files\Java\jdk1.8.0_251\bin\java.exe" -Dmaven.multiModuleProjectDirectory=C:\Users\User-Dai\AppData\Local\Temp\archetypetmp -Dmaven.home=D:\apache-maven-3.6.3 -Dclassworlds.conf=D:\apache-maven-3.6.3\bin\m2.conf "-Dmaven.ext.class.path=C:\Program Files\JetBrains\IntelliJ IDEA 2020.1\plugins\maven\lib\maven-event-listener.jar" "-javaagent:C:\Program Files\JetBrains\IntelliJ IDEA 2020.1\lib\idea_rt.jar=64704:C:\Program Files\JetBrains\IntelliJ IDEA 2020.1\bin" -Dfile.encoding=UTF-8 -classpath D:\apache-maven-3.6.3\boot\plexus-classworlds-2.6.0.jar;D:\apache-maven-3.6.3\boot\plexus-classworlds.license org.codehaus.classworlds.Launcher -Didea.version2020.1 -s D:\apache-maven-3.6.3\conf\settings.xml -Dmaven.repo.local=D:\maven-storage -DinteractiveMode=false -DgroupId=cn.echo42 -DartifactId=Maven-Archetype-Sample -Dversion=1.0-SNAPSHOT -DarchetypeGroupId=org.apache.maven.archetypes -DarchetypeArtifactId=maven-archetype-webapp -DarchetypeVersion=RELEASE -DarchetypeCatalog=internal org.apache.maven.plugins:maven-archetype-plugin:RELEASE:generate
[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.0:generate (default-cli) > generate-sources @ standalone-pom >>>
[INFO] 
[INFO] <<< maven-archetype-plugin:3.2.0:generate (default-cli) < generate-sources @ standalone-pom <<<
[INFO] 
[INFO] 
[INFO] --- maven-archetype-plugin:3.2.0:generate (default-cli) @ standalone-pom ---
[INFO] Generating project in Batch mode
[INFO] Archetype repository not defined. Using the one from [org.apache.maven.archetypes:maven-archetype-webapp:1.0] found in catalog internal
[INFO] ----------------------------------------------------------------------------
[INFO] Using following parameters for creating project from Archetype: maven-archetype-webapp:RELEASE
[INFO] ----------------------------------------------------------------------------
[INFO] Parameter: groupId, Value: cn.echo42
[INFO] Parameter: artifactId, Value: Maven-Archetype-Sample
[INFO] Parameter: version, Value: 1.0-SNAPSHOT
[INFO] Parameter: package, Value: cn.echo42
[INFO] Parameter: packageInPathFormat, Value: cn/echo42
[INFO] Parameter: package, Value: cn.echo42
[INFO] Parameter: version, Value: 1.0-SNAPSHOT
[INFO] Parameter: groupId, Value: cn.echo42
[INFO] Parameter: artifactId, Value: Maven-Archetype-Sample
[INFO] Project created from Archetype in dir: C:\Users\User-Dai\AppData\Local\Temp\archetypetmp\Maven-Archetype-Sample
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 4.503 s
[INFO] Finished at: 2020-08-04T20:57:23+08:00
[INFO] ------------------------------------------------------------------------

目录结构:

发现我们的源码包和资源包都没有配置,只有一个放置页面资源的webapp目录

我们可以把webapp拖动放到我们想存放的位置:

自己手动配置Resource和Java目录

在对main目录进行右键创建包的时候,IDEA会自动建议创建Maven项目的目录结构

JSP首页甚至没有JSP指令标签。。。

<html>
<body>
<h2>Hello World!</h2>
</body>
</html>

可以把POM配置这些都更新:

<properties>
  <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  <maven.compiler.source>1.8</maven.compiler.source>
  <maven.compiler.target>1.8</maven.compiler.target>
 </properties>

 <dependencies>
  <dependency>
   <groupId>junit</groupId>
   <artifactId>junit</artifactId>
   <version>4.13</version>
   <scope>test</scope>
  </dependency>
 </dependencies>

也就是说这个骨架最初并不是给IDEA创建的

而是给Eclipse使用的。。。

接下来是配置Tomcat

点加号找到TomcatServer选择本地,千万别下面的EE Server

IDEA会提示你还没有配置Tomcat,直接Fix就好了

选下面这个explored的

自行更换工程资源路径:

重要的热部署选上:

启动项目发现404,结果之前好好的webapp目录IDEA不识别了

因为默认的配置路径IDEA找不到了,需要我们自己改上去:

把之前的index.jsp删除,重新配置一个

<%--
 Created by IntelliJ IDEA.
 User: User-Dai
 Date: 2020/8/4
 Time: 21:18
 To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
  <title>Title</title>
</head>
<body>
  
  Hello Java
</body>
</html>

okokok

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • 生成PDF全攻略之在已有PDF上添加内容的实现方法

    生成PDF全攻略之在已有PDF上添加内容的实现方法

    下面小编就为大家带来一篇生成PDF全攻略之在已有PDF上添加内容的实现方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-06-06
  • Java中Console对象实例代码

    Java中Console对象实例代码

    这篇文章主要介绍了Java中Console对象实例代码,分享了相关代码示例,小编觉得还是挺不错的,具有一定借鉴价值,需要的朋友可以参考下
    2018-02-02
  • 简单了解spring bean的循环引用

    简单了解spring bean的循环引用

    这篇文章主要介绍了简单了解spring bean的循环引用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-08-08
  • 通过代码理解java泛型

    通过代码理解java泛型

    本篇文章通过代码实例让大家充分的理解java泛型的相关知识点内容,有需要的朋友们可以学习下。
    2018-08-08
  • C++/java 继承类的多态详解及实例代码

    C++/java 继承类的多态详解及实例代码

    这篇文章主要介绍了C++/java 继承类的多态详解及实例代码的相关资料,需要的朋友可以参考下
    2017-02-02
  • Spring ProtocolResolver策略接口示例

    Spring ProtocolResolver策略接口示例

    这篇文章主要介绍了Spring ProtocolResolver策略接口示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-04-04
  • java中double类型运算结果异常的解决方法

    java中double类型运算结果异常的解决方法

    下面小编就为大家带来一篇java中double类型运算结果异常的解决方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-12-12
  • Java基础之反射技术相关知识总结

    Java基础之反射技术相关知识总结

    今天带大家复习Java基础知识,文中对Java反射技术介绍的非常详细,对正在学习Java的小伙伴们很有帮助,,需要的朋友可以参考下
    2021-05-05
  • Java中实现String.padLeft和String.padRight的示例

    Java中实现String.padLeft和String.padRight的示例

    本篇文章主要介绍了Java中实现String.padLeft和String.padRight,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-09-09
  • Character.UnicodeBlock中cjk的说明详解

    Character.UnicodeBlock中cjk的说明详解

    这篇文章主要为大家详细介绍了Character.UnicodeBlock中cjk的说明,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-09-09

最新评论