maven栏显示的不是当前工程_80、Linux和Maven

一、安装Tomcat

软件安装

上传资源到 Linux

c08dc5f27e00da394a0590574d60c24d.png

解压缩 10

0a5ab78ed6eb81d80e59941abbc354e4.png

使用

tomcat/bin/startup.sh

启动Tomcat

06407280981de101da8026af9051faaa.png

查看日志

tomcat/logs/catalina.out 文件是日志文件. 就是控制台输出的文件.

9e60a55e0659c27596573bef9e5d7d10.png

tail -f tomcat/logs/catalina.out - 追加显示的模式查看文件末尾信息.

4867fdd9a31ebe4510dad4c2e0d5881f.png

tomcat/bin/startup.sh & tailf tomcat/logs/catalina.out

& - 命令连接符, 左侧命令执行结束后,立刻执行右侧命令.

eb15960bac50b743201a5ac424f4a243.png

b4f386a6436a139cc25df57811f1fc09.png

测试应用

http://ip:port/

Tomcat启动

1f3cdbb41797bb223c2139aa13f188e7.png

Tomcat关闭

6597178e46655d3606061bf25c137fba.png

二、安装 MySQL

yum 安装

上传本地 yum 文件

mysql-community-release-el6-5.noarch.rpm

增加本地 yum 信息

yum 安装,是通过远程的 yum 应用服务器下载安装包并安装软件的方式.

yum 应用服务器中的数据是固定的

增加本地 yum 信息,相当于增加一个新的 yum 应用服务器中的软件列表.

yum localinstall 文件名

6854af7f543653d7f1f6584151e52e09.png

yum 远程下载并安装

yum install mysql-server

mysqld - 是 Oracle 定义的 yum 下载应用命名.

参数 : y, 代表忽略互动提示,直接下载并安装.

4fbe86986a581cbb1c9fd91886d33fc1.png

需要下载的文件

1d6fe20079e9cd165496ab9d7b88298d.png

e2bf5eba933c130410f683568f7971e6.png

启动服务

service mysqld start

第一次启动较慢, 需要初始化默认库. 后续启动正常.

7e447feaa9299c6a775e5275c8d212c3.png

MySQL第一次启动加载的文件

8d95aaa439fbe834b6a6005087d12336.png

测试应用

设置 root 用户密码

/usr/bin/mysqladmin -u root password 'new-password'

不要复制命令. word 文档编辑的命令,符号是中文符号.

为 root 用户授权

登录 mysql

mysql -uroot -p 密码

31b0788c6dc4b36ecfe86b6204ca029c.png

授权命令

grant all privileges on *.* to 'root'@'%' identified by 'root' with grant option;

grant all privileges on 权限信息 to 'mysql 用户名'@'可访问的 ip地址,%代表所有' identified by '用户密码' with grant option;

7c2037562d1cfcf77277e016c43e2aaf.png

刷新授权信息

flush privileges;

0d5f7dc44711f0e75ab8552a2a55e48a.png

访问测试

登录

mysql -u 用户名 -p 密码

-p 后直接输入密码,不能有任何其他字符.

访问任意位置的 MySQL 数据库

mysql -u 用户名 -p 密码 -h 主机名或 IP 地址 -P 端口号

三、Maven 概念

1 什么是 Maven

Maven 使用项目对象模型(POM)的概念,可以通过一小段描述信息来管理项目的构建,

报告和文档的软件项目管理工具。

Maven 除了以程序构建能力为特色之外,还提供高级项目管理工具。由于 Maven 的

缺省构建规则有较高的可重用性,所以常常用两三行 Maven 构建脚本就可以构建简单的项

目。由于 Maven 的面向项目的方法,许多 Apache Jakarta 项目发布时使用 Maven,而且

公司项目采用 Maven 的比例在持续增长。

2 Maven 和 ANT 的区别

Ant 是软件构建工具,Maven 的定位是软件项目管理和理解工具。Maven 除了具备 Ant

的功能外,还增加了以下主要的功能:

1)使用 Project Object Model 来对软件项目管理;

2)内置了更多的隐式规则,使得构建文件更加简单;

3)内置依赖管理和 Repository 来实现依赖的管理和统一存储;

4)内置了软件构建的生命周期;

目前,绝大多数开发人员都把 Ant 当作 Java 编程项目的标准构建工具。遗憾的是,

Ant 的项目管理工具(作为 make 的替代工具)不能满足绝大多数开发人员的需要。通过检

查 Ant 构建文件,很难发现项目的相关性信息和其它信息(如开发人员/拥有者、版本或站

点主页)。

四、Maven 的下载与 IDE 的整合

1 下载地址

Welcome to Apache Maven​maven.apache.org

2 Maven 的目录结构

9584458b336d9e54b386e9be874f6982.png

3 Eclipse 整合 Maven

3.1整合步骤

3919e5f52923327ff67a7b5d51cf4517.png

443076744cf7649d8f75a969592b0b68.png

3.2指定 maven 的配置文件

8eac4fcf85a5563cae05df72090eac42.png

4 Maven 仓库与配置

4.1Maven 仓库是什么

4.1.1Maven 仓库

Maven 仓库是基于简单文件系统存储的,集中化管理 Java API 资源(构件)的一个服

务。仓库中的任何一个构件都有其唯一的坐标,根据这个坐标可以定义其在仓库中的唯一存

储路径。得益于 Maven 的坐标机制,任何 Maven 项目使用任何一个构件的方式都是完全

相同的,Maven 可以在某个位置统一存储所有的 Maven 项目共享的构件,这个统一的位

置就是仓库,项目构建完毕后生成的构件也可以安装或者部署到仓库中,供其它项目使用。

对于 Maven 来说,仓库分为两类:本地仓库和远程仓库。

4.1.2远程仓库

远程仓库指通过各种协议如 file://和 http://访问的其它类型的仓库。这些仓库可能是第

三方搭建的真实的远程仓库,用来提供他们的构件下载(例如 http://repo.maven.apache.org 和http://uk.maven.org 是 Maven 的中央仓库)。其它“远程”仓库可能是你的公司拥有的建立在文件或 HTTP 服务器上的内部仓库,用来在开发团队间共享私有构件和管理发布的。

4.1.3本地仓库

本地仓库指本机的一份拷贝,用来缓存远程下载,包含你尚未发布的临时构件。

5 仓库配置

5.1在 settings.xml 文件中配置本地仓库

本地仓库是开发者本地电脑中的一个目录,用于缓存从远程仓库下载的构件。默认的本

地仓库是${user.home}/.m2/repository。用户可使用 settings.xml 文件修改本地仓库。具体内容如下:

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

5.2在 settings.xml 文件中配置镜像仓库

如果仓库 A 可以提供仓库 B 存储的所有内容,那么就可以认为 A 是 B 的一个镜像。例如:在国内直接连接中央仓库下载依赖,由于一些特殊原因下载速度非常慢。这时,我们可以使用阿里云提供的镜像 http://maven.aliyun.com/nexus/content/groups/public/来替换中央仓库 http://repol.maven.org/maven2/。修改 maven 的 setting.xml 文件,具体内容如下:

<mirror> 

6 仓库优先级问题

本地仓库,镜像仓库,中央仓库。

镜像仓库=中央仓库。 镜像仓库是用于替代中央仓库的。

仓库访问优先级:

6.1本地仓库

第一访问本地仓库。

6.2指定仓库

如果本地仓库不存在对应信息,访问配置文件中指定的远程仓库。

这个远程仓库是第二优先级。

6.3远程仓库

6.3.1镜像仓库

镜像仓库是 Maven 开发过程中的首选远程仓库,在本地仓库和指定仓库无法获取资源

的时候,直接访问镜像仓库。

6.3.2中央仓库

如果镜像仓库不是中央仓库,则会在访问镜像仓库无法获取资源后,访问中央仓库。

五、 Maven 工程

1 Maven 的工程类型

1.1POM 工程

POM 工程是逻辑工程。用在父级工程或聚合工程中。用来做 jar 包的版本控制。

1.2JAR 工程

将会打包成 jar 用作 jar 包使用。即常见的本地工程 - Java Project。

1.3WAR 工程

将会打包成 war,发布在服务器上的工程。如网站或服务。即常见的网络工程 - Dynamic

Web Project。war 工程默认没有 WEB-INF 目录及 web.xml 配置文件,IDE 通常会显示工程错误,提供完整工程结构可以解决。

2 创建 Maven 项目

2.1创建步骤

2.1.1New--> other -->Maven Project

618b3612ac7c4e36917d5e854043b42e.png

2.1.2勾选,创建纯净项目,不应用任何模版

8c500ac0762fbfba34f97b60446a793d.png

b11b7bc95fa8dd4ae7cfe5e72efc4c01.png

2.2填写项目信息

2.2.1 Group Id 公司域名倒写

2.2.2 Artifact Id 项目名

2.2.3 Version 版本名

2.2.4 Packaging 项目类型

2.2.4.1 Jar java 项目

2.2.4.2 War : web 项目

2.2.4.3 POM: 父项目.如果项目有子项目,项目必须是 pom

2.2.5 Name : 自定义名称,内容任意

2.2.6 Description: 描述.详细描述.

2.2.7 Parent Project: 如果当前项目有父项目时填写

2.3Maven 项目结构

src/main/java 这个目录下储存 java 源代码

src/main/resources 储存主要的资源文件。比如spring的xml配置文件和log4j的properties

文件。

src/test/java 储存测试用的类,比如 JUNIT 的测试一般就放在这个目录下面

src/test/resources 储存测试用的资源文件

src 包含了项目所有的源代码和资源文件,以及其他项目相关的文件。

target 编译后内容放置的文件夹

pom.xml 是 Maven 的基础配置文件。配置项目和项目之间关系,包括配置依赖关系等等

3 工程关系

3.1依赖

即 A 工程开发或运行过程中需要 B 工程提供支持,则代表 A 工程依赖 B 工程。在这种情况下,需要在 pom.xml 文件中增加下属配置定义依赖关系

<dependencies>

3.2继承

如果 A 工程继承 B 工程,则代表 A 工程默认依赖 B 工程依赖的所有资源,且可以应用B 工程中定义的所有资源信息。被继承的工程(B 工程)只能是 POM 工程。

父工程配置

d2870bb1b4c93fca40b08187d0064e68.png
<project 

子工程配置

2478896466496ac1f4b311094ad2ea9e.png
<project 

3.3聚合

当我们开发的工程拥有 2 个以上模块的时候,每个模块都是一个独立的功能集合。比如

某大学系统中拥有搜索平台,学习平台,考试平台等。开发的时候每个平台都可以独立编译,

测试,运行。这个时候我们就需要一个聚合工程。

在创建聚合工程的过程中,总的工程必须是一个 POM 工程(Maven Project),各子模

块可以是任意类型模块(Maven Module)。所有聚合工程和聚合模块必须处于同一个组

(groupId)中,且聚合工程可以嵌套。

3.3.1创建聚合项目

f7fb9bfa8288c375b752480c1fe1f48e.png

创建模块

981d3d7dd5f98013718f6cf188cd8d99.png

8109a1f7dc59f8a751f30d52080a38f8.png

聚合项目的 POM 文件

<project 

4 创建 war 类型项目

e3c7e86d91f7d073789f2ee66183453b.png

95f5185d6a6fcf5164eb4e64e1d02e5d.png

六、 Maven 中的常见插件

1 编译器插件

1.1pom.xml 配置片段

<build>
	

1.2settings.xml 文件中配置全局编译器插件

<profile>
	

2 Tomcat 管理插件

2.1本地应用

使用 Tomcat 插件发布部署并执行 war 工程的时候,使用 maven build 功能实现。应用启

动命令为: tomcat7:run。命令中的 tomcat7 是插件命名,由插件提供商决定。run 为插件中的具体功能。具体 pom.xml 文件的配置如下:

<build>
	

2.2远程热部署

远程热部署是指,在 Tomcat 容器运行过程中,动态实现 war 工程的部署,重新部署功能。使用 maven build 功能实现,具体命令为:tomcat7:deploy 或 tomcat7:redeploy。其中 deploy代表第一次部署 war 工程;redeploy 代表 Tomcat 容器中已有同名应用,本次操作为重新部署同名 war 工程。

实现热部署需要远程访问 Tomcat 容器,所以 Tomcat 容器需要提供合适的访问方式和验 证方式。

实现热部署,需要访问 Tomcat 容器提供的原始应用 manager,并提供有效有权限的访 问用户,所以在 Tomcat 中也需提供部分配置。具体配置内容如下:

2.2.1Tomcat 中的 conf/tomcat-users.xml 文件的配置

<role 

2.2.2pom.xml 文件中的配置

<build>
		

3 资源拷贝插件

Maven 在打包时默认只将 src/main/resources 里的配置文件拷贝到项目中并做打包处理,

而非 resource 目录下的配置文件在打包时不会添加到项目中

<build>
		
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值