首页 > 其他分享 >tomcat&maven

tomcat&maven

时间:2023-04-23 12:23:04浏览次数:34  
标签:Maven tomcat Tomcat web 配置 maven plugin

Tomcat

安装Tomcat

tomcat官网:https://tomcat.apache.org/


Tomcat启动和配置

文件夹作用:

启动、关闭tomcat

访问测试:localhost:8080

可能遇到的问题:

  1. java环境变量没有配置
  2. 闪退问题:需要配置兼容性
  3. 乱码问题:配置文件中设置

配置Tomcat

可以配置启动的端口号

  • tomcat默认端口号:8080
  • mysql:3306
  • http:80
  • https:443
<Connector port="8080" protocol="HTTP/1.1"
           connectionTimeout="20000"
           redirectPort="8443" />

可以配置主机的名称

  • 默认的主机名为:localhost-->127.0.0.1
  • 默认网站应用存放的位置为:webapps
  <Host name="localhost"  appBase="webapps"
        unpackWARs="true" autoDeploy="true">

高难度面试题:

请你谈谈网站是如何进行访问的!

  1. 输入一个域名:回车

  2. 检查本机的C:\Windows\System32\drivers\etc\networks下有没有映射

    1. 有:直接返回对应的ip地址,这个地址中,有我们需要访问的web程序,可以直接访问

      127.0.0.1  www.jamcash.com
      
    2. 没有:去DNS服务器上找,找的到就返回,找不到就返回找不到;

  3. 可以配置一下环境变量(可选性)

发布一个web网站

不会就先模仿

  • 将自己写的网站,放到服务器(Tomcat)中指定的web应用的文件夹下(webapps)下,就可以访问了

网站应有的结构

--webapps:Tomcat服务器的web目录
    --ROOT
    --JamCash:网站的目录名
        -WEB-INF 放网站的
        	-classes :java程序
            -lib:web应用所依赖的jar包
   			-web.xml:网站配置文件
        -index.jsp 默认的首页
        -static
           -css
                -style.css
           -js
           -img
        -...

Maven

我为什么要学习这个技术?

  1. 在javaweb中要导入很多jar包,我们手动去导入;

  2. 如何让一个工具自动帮我导入和配置这个jar包

    由此,Meven诞生了!

Maven项目架构管理工具

我们目前用来就是方便导入jar包的!

Maven的核心思想:约定大于配置

  • 有约束,不要去违反

Maven会规定好你应该如何编写java代码,必须要按照这个规范来:

下载安装Maven

官网:https://maven.apache.org/

下载完成后解压即可:

小狂神友情建议:电脑上的所有环境都放在同一个文件下,方便管理;

配置环境变量

在我们的系统环境变量中

配置如下配置:

  • M2_HOME maven目录下的bin目录
  • MAVEN_HOME maven的目录
  • 在系统的path中配置 %MAVEN_HOME%\bin

安装成功!

阿里云镜像

  • 镜像:mirrors
    • 作用:加速我们的下载
  • 国内建议使用阿里云镜像
<mirror>
  <id>nexus-aliyun</id>
  <mirrorOf>*,!jeecg,!jeecg-snapshots</mirrorOf>
  <name>aliyun maven</name>
  <url>http://maven.aliyun.com/nexus/content/groups/public/</url>   
</mirror>

本地仓库

在本地的仓库,远程仓库;

建立一个本地仓库:

localRepository

<localRepository>D:\Environment\apache-maven-3.6.3\maven-repo</localRepository>

在IDEA中使用Maven

  1. 启动IDEA

  2. 创建一个Maven项目

  1. 等待项目初始化完毕

    Enable Auto-import

BUILD SUCCESS

  1. 观察maven仓库增加了啥?

  2. IDEA中的Maven设置

    注意:IDEA项目创建成功后,看一眼Maven的配置

创建一个普通的Maven项目

这个只有在web应用下才会有

法一:

在IDEA中标记文件夹功能

法二:

在IDEA中配置Tomcat

IDEA2017要用tomcat9 maven3.5.4

解决警告问题

为什么会有这个问题:我们访问一个网站,需要指定一个文件夹名字;必须要的配置

pom文件

maven侧边栏结构

pom.xml是Maven的核心配置文件

<?xml version="1.0" encoding="UTF-8"?>
<!--Maven版本和头文件-->
<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>

  <!--这里就是我们刚才配的GAV-->
  <groupId>com.jamcash</groupId>
  <artifactId>javaweb01-maven</artifactId>
  <version>1.0-SNAPSHOT</version>
  <!--package:项目的打包方式
  jar包:java应用
  war包:javaweb应用
  -->
  <packaging>war</packaging>

  <!--一些名称-->
  <name>javaweb01-maven Maven Webapp</name>
  <!-- FIXME change it to the project's website -->
  <url>http://www.example.com</url>

  <!--配置-->
  <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>
    <!--具体依赖的jar包配置文件-->
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>4.11</version>
    </dependency>
  </dependencies>

  <!--项目构建用的东西-->
  <build>
    <finalName>javaweb01-maven</finalName>
    <pluginManagement><!-- lock down plugins versions to avoid using Maven defaults (may be moved to parent pom) -->
      <plugins>
        <plugin>
          <artifactId>maven-clean-plugin</artifactId>
          <version>3.1.0</version>
        </plugin>
        <!-- see http://maven.apache.org/ref/current/maven-core/default-bindings.html#Plugin_bindings_for_war_packaging -->
        <plugin>
          <artifactId>maven-resources-plugin</artifactId>
          <version>3.0.2</version>
        </plugin>
        <plugin>
          <artifactId>maven-compiler-plugin</artifactId>
          <version>3.8.0</version>
        </plugin>
        <plugin>
          <artifactId>maven-surefire-plugin</artifactId>
          <version>2.22.1</version>
        </plugin>
        <plugin>
          <artifactId>maven-war-plugin</artifactId>
          <version>3.2.2</version>
        </plugin>
        <plugin>
          <artifactId>maven-install-plugin</artifactId>
          <version>2.5.2</version>
        </plugin>
        <plugin>
          <artifactId>maven-deploy-plugin</artifactId>
          <version>2.8.2</version>
        </plugin>
      </plugins>
    </pluginManagement>
  </build>
</project>

maven由于他的约定大于配置,我们之后可能会遇到我们写的配置文件,无法被导出或者生效的问题

解决方案:

 <!--在build中配置resources,来防止我们资源导出失败的问题-->
<build>
    <resources>
        <resource>
            <directory>src/main/resources</directory>
            <includes>
                <include>**/*.properties</include>
                <include>**/*.xml</include>
            </includes>
        </resource>
        <resource>
            <directory>src/main/java</directory>
            <includes>
                <include>**/*.properties</include>
                <include>**/*.xml</include>
            </includes>
            <filtering>true</filtering>
        </resource>
    </resources>
</build>

标签:Maven,tomcat,Tomcat,web,配置,maven,plugin
From: https://www.cnblogs.com/jamcash/p/17346189.html

相关文章

  • MAVEN使用技巧
    maven常用命令mvn-v//查看版本 mvnarchetype:create//创建Maven项目 mvncompile//编译源代码 mvntest-compile//编译测试代码 mvntest//运行应用程序中的单元测试 mvnsite//生成项目相关信息的网站 mvnpackage//依据项目生成jar文件 mvninstal......
  • maven入门教程
    1.1. Maven简介Maven是基于项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的软件项目管理工具。Maven除了以程序构建能力为特色之外,还提供高级项目管理工具。由于Maven的缺省构建规则有较高的可重用性,所以常常用两三行Maven构建脚本就可以构建简单的项......
  • Java使用maven-invoker插件进行maven相关操作
    官方文档地址:https://maven.apache.org/shared/maven-invoker/index.htmlApacheMavenInvoker在许多情况下,工具(包括Maven本身)可能希望在干净的环境中启动Maven构建。为什么呢?也许您希望避免Maven插件产生的副作用污染当前系统环境。也许您想从与当前${user.dir}不同的工作目......
  • java maven pom指定main class类
    pom文件中增加 <build><finalName>entrance</finalName><!--这里是生成的jar包名字--><plugins><plugin><groupId>org.apache.maven.plugins</groupId><arti......
  • 使用Maven-shade-plugin打包SpringBoot项目
    使用Maven-shade-plugin打包SpringBoot项目另附参考文章:https://blog.csdn.net/u011441473/article/details/127844885好奇葩的打包之旅,最后在stackoverflow上找到了解决办法,遇到问题,还是多去google吧,国内真不行,百度质量太低,一件很小的事,花了我1个多小时。。下面说一下我遇到......
  • 【maven】模块化开发
    什么是maven模块化开发? 在多人协同开发,特别是规模较大的项目,为了方便日后的代码维护和管理,我们会将每个开发人员的工作细分到具体的功能和模块上。......
  • 2、Pipeline语法及使用自定义工具的Maven工程
    Pipeline语法声明式pipeline的结构pipeline的定义有一个明确的、必须遵循的结构,它由一些directive(指令)和section(配置段)组成,每一个section又可包含其它的section、directive和step(执行步骤),以及一些condition(执行条件)的定义;◼Section:用于将那些在某个时间点需要一同运行的条目(i......
  • maven项目文件资源导出配置
    配置原因maven项目会自动导出resource目录下的资源配置文件,但有时项目中不仅仅会把所有资源配置文件放在resources中,这时maven不会把其他目录下的资源导出到target目录中去,导致资源配置文件读取失败,项目报错出现异常,此时需要在pom.xml文件中进行配置。 <!--在build中配......
  • 如何阅读Tomcat源代码?
    容器,简单理解就是用来装东西的工具。在Tomcat里面,容器被设计用来装载Servlet,也就是我们平常写的普通的Servlet,就会存放在容器里面。这也就是咱们平常念叨的Servlet容器,其实从广义上理解,Servlet容器是指Tomcat,从狭义上理解,Servlet容器,只是Tomcat里面的一个组件而已。1.容器概述To......
  • 阿里云ECS linux操作系统 tomcat域名配置SSL
    阿里云ECS linux操作系统 tomcat域名配置SSL启用域名https1、解压已保存到本地的Tomcat证书文件。解压后您将看到文件夹中有以下文件:证书文件(domain_name.pfx)密码文件(pfx-password.txt) 说明本文中证书名称以domain_name为示例。每次下载证书都会产生新的密码。......