maven基础笔记整理(idea版)

maven基础篇(idea版)
p1-p11 打卡 2020.06.10
p12-最后 打卡 2020.06.11
除最后数据库链接没有整理笔记,之外都整理了,看看该去学别的了hhh

提示:建议使用idea2020.2的版本来适配maven3.6.3
最开始用2020.1的版本的时候出现了各种各样的问题,后来提高版本后就没有之前那么多问题了,版本适配害人呜呜呜呜呜

01_自动化构建工具
1、目前掌握的技术
在这里插入图片描述

2、目前的技术在开发中存在的问题
①一个项目就是一个工程
②项目中需要的jar包必须手动“复制”、“粘贴”到WEB-INF/lib中
③jar包需要别人替我们准备好,或到官网下载
④一个jar包依赖的其他jar包需要自己手动加入到项目中

Maven优势
依赖管理:maven工程对jar包的管理过程
在这里插入图片描述
在这里插入图片描述

MAVEN标准目录结构
在这里插入图片描述

MAVEN常用命令
mvn clean
mvn compile
mvn test
mvn package 打包war包
mvn install 安装到了本地仓库D:\maven_repository\cn\itcast\maven目录下

maven生命周期
在这里插入图片描述

maven概念模型
在这里插入图片描述

idea中maven配置
在这里插入图片描述
配置了这个maven在不联网时也可使用,如果不配置的话,maven必须联网使用

-DarchetypeCatalog=internal

在这里插入图片描述

使用骨架创建maven的java工程
IDEA版本:2020.1
Maven版本:3.6.3
勾选create from archetype就可以使用下方列出的idea中的骨架
在这里插入图片描述
选择quickstart,quickstart就是idea为maven提供的java骨架
在这里插入图片描述
在这里插入图片描述
在运行构建好的maven新文件中出现以下报错(当时就复制了这个搜索错误)

Error:(3, 24) java: 程序包org.junit不存在

打开project structure->libraries->java->然后寻找idea的安装目录下的lib,我直接全部导入了然后再次运行app.java就没有报错了
在这里插入图片描述
创建resources目录
在main目录下右键创建目录
idea 2020.1版本中创建resources目录直接创建为资源目录
如果不是先创建resources右键->mark directory as -> resources root
在这里插入图片描述

另附阿里镜像文件(下载速度能快一些
配置在apache-maven-3.6.3->conf->settings.xml->mirrors标签内

<mirror> 
	<id>alimaven</id> 
	<mirrorOf>central</mirrorOf> 
	<name>aliyun maven</name>
	<url>http://maven.aliyun.com/nexus/content/repositories/central/</url> 
</mirror>

不使用骨架创建maven项目
在这里插入图片描述
在这里插入图片描述
没有像选择骨架那样生成一个java文件,但是大致的框架还是有的
在这里插入图片描述
创建maven的web工程
在这里插入图片描述
在第一次新建项目时等待一下,控制台出现build success则成功
这是我的项目目录,新建一个文件夹为java,然后按下图操作,就可以在里面写servlet了
在这里插入图片描述

然后发现在java包下没有servlet,所以去网上找了解决方法参考博客
这是我的pom下的配置,记得选择maven load changes,我因为一直没有选择,然后servlet一直爆红……百度了那么久,回头研究的时候发现是这里没有点,有点崩溃=-=

在这里插入图片描述
发现这样写很方便啊,不管写的那种方式,都不会报错,GET!
在这里插入图片描述
idea右侧点击maven,会出现maven的生命周期,可以直接双击执行,或者点击m的小符号用命令来执行,是一样的
在这里插入图片描述
按照老师说的,发现没有代码提示,但是没关系,依旧可以执行,idea会自动下载,然后执行(记得在前面配置阿里云的镜像下载
在这里插入图片描述
我在那里等了好久才发现控制台已经出了=-=
在这里插入图片描述
解决jar包冲突问题,修改scope范围
在这里插入图片描述
然后再次执行tomcat:run的时候控制台报错,发现,似乎是原来的启动的tomcat未关闭的原因。。

execute goal org.codehaus.mojo:tomcat-maven-plugin:1.1:run (default-cli) on project maven_web: Could not start Tomcat

再次加载网页出现这个问题可以参考这篇参考博客
在这里插入图片描述
如果配置失败,cmd启动tomcat的方法如下…然后打开idea执行tomcat7:run
就可以跳转网页了,虽然我也不知道到底是那里出错了……至少,现在能用了,先用着看看
在这里插入图片描述

这是我目前的pom.xml文件,其他文件已经按照上面附上的教程重新配置了

<?xml version="1.0" encoding="UTF-8"?>

<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>

  <groupId>com.example</groupId>
  <artifactId>maven_web</artifactId>
  <version>1.0-SNAPSHOT</version>
  <packaging>war</packaging>

  <name>maven_web 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.7</maven.compiler.source>
    <maven.compiler.target>1.7</maven.compiler.target>
  </properties>

  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>4.11</version>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>javax.servlet</groupId>
      <artifactId>servlet-api</artifactId>
      <version>2.5</version>
      <scope>provided</scope>
    </dependency>
    <dependency>
      <groupId>javax.servlet.jsp</groupId>
      <artifactId>jsp-api</artifactId>
      <version>2.0</version>
      <scope>provided</scope>
    </dependency>
  </dependencies>

  <build>
    <finalName>maven_web</finalName>
    <pluginManagement><!-- lock down plugins versions to avoid using Maven defaults (may be moved to parent pom) -->
      <plugins>
        <plugin>
          <groupId>org.apache.tomcat.maven</groupId>
          <artifactId>tomcat7-maven-plugin</artifactId>
          <version>2.2</version>
          <configuration>
            <!-- 使用tomcat9部署应用 此处的server标签中的值与第二步maven配置文件中的id值一致-->
            <server>tomcat9</server>
            <update>true</update>
          </configuration>
        </plugin>
        <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>


另附pom.xml中依赖的范围在这里插入图片描述

  • 7
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值