Maven 翻译为"专家"、"内行",是 Apache 下的一个纯 Java 开发的开源项目。基于项目对象模型(缩写: POM)概念,Maven利用一个中央信息片断能管理一个项目的构建、报告和文档等步骤。Maven 是一个项 目管理工具,可以对 Java 项目进行构建、依赖管理。Maven 也可被用于构建和管理各种项目,例如 C#, Ruby,Scala 和其他语言编写的项目。Maven 曾是 Jakarta 项目的子项目,现为由 Apache 软件基金会主持 的独立 Apache 项目。
<localRepository>D:/maven/r2/myrepository</localRepository>
<profile>
<id>jdk-1.7</id>
<activation>
<activeByDefault>true</activeByDefault>
<jdk>1.7</jdk>
</activation>
<properties>
<maven.compiler.source>1.7</maven.compiler.source>
<maven.compiler.target>1.7</maven.compiler.target>
<maven.compiler.compilerVersion>1.7</maven.compiler.compilerVersion>
</properties>
</profile>
<mirror>
<id>alimaven</id>
<name>aliyunmaven</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
<mirrorOf>central</mirrorOf>
</mirror>
注意:无论是 java 视图还是 javaee 视图,src/main/java 下都有 main 和 resources ,只是 java 视图看不见(默认 隐藏)
<parent>
标签
如果子项目和 <groupId>
和 <version>
与父项目项目,在子项目中可以不配置 <groupId>
和
<version>
<parent>
<groupId>com.bjsxt</groupId>
<artifactId>parent</artifactId>
<version>0.0.1-SNAPSHOT</version>
</parent>
<modules>
<modules>
<module>child2</module>
</modules>
<parent>
<parent>
<groupId>com.bjsxt</groupId>
<artifactId>parent</artifactId>
<version>0.0.1-SNAPSHOT</version>
</parent>
<dependencyManagement>
写在父项目<groupid>
和 <artifactid>
, <version>
继承父项目<properties>
把所有版本好进行统一管理<properties>
子标签名称自定义
B. ${名字} 引用标签的值<properties>
<spring-version>4.1.6.RELEASE</spring-version>
</properties>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>${spring-version}</version>
</dependency>
</dependencies>
</dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
</dependency>
</dependencies>
<scope>
jar有效范围 provided 表示编译期生效,不会打包发布到 tomcat 中,因为 tomcat 中默认
有,打包过去的话会有冲突<dependencies>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.0.1</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>jsp-api</artifactId>
<version>2.2</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>jstl</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>
</dependencies>
<plugins>
也可以用
<pluginManagement>
括起来表示不立即引入到子项目中,子项目如果需要的话可以再单独引入,子项目引入
时的版本号标签要去掉,也起到了父项目统一管理子项目插件版本的目的<build>
<plugins>
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
<configuration>
<!-- 控制 tomcat 端口号 -->
<port>80</port>
<!-- 项目发布到 tomcat 后的名称 -->
<!-- / 相当于把项目发布名称为 ROOT -->
<!-- /abc -->
<path>/</path>
</configuration>
</plugin>
</plugins>
</build>
clean tomcat7:run
注意:不注明版本 7 默认是版本 6<build>
中 )<resources>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.xml</include>
</includes>
</resource>
<resource>
<directory>src/main/resources</directory>
<includes>
<include>**/*.xml</include>
<include>**/*.properties</include>
</includes>
</resource>
</resources>
简介:通过热部署配置,可以便捷地把本地项目发布到远程的 tomcat (发布会不用重启 tomcat 就能看到效果)
<rolerolename="manager-gui"/>
<rolerolename="manager-script"/>
<user username="tomcat" password="tomcat" roles="manager-gui,manager-script"/>
<configuration>
里配置<plugins>
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
<configuration>
<!-- 控制 tomcat 端口号 指 Maven 里的 tomcat 端口,热部署时这项不生效 -->
<port>80</port>
<!-- 项目发布到 tomcat 后的名称 -->
<!-- / 相当于把项目发布名称为 ROOT -->
<!-- /abc -->
<path>/jqk</path>
<username>tomcat</username>
<password>tomcat</password>
<url>http://192.168.139.128:8080/manager/text</url>
</configuration>
</plugin>
</plugins>
当 @RequestMapping("/")
控制器注解无法进入时,可尝试在 web.xml 中做如下配置
<welcome-file-list>
<welcome-file></welcome-file>
</welcome-file-list>
强行解释:不配置欢迎列表内容,项目默认走 index.jsp ,所以需要配置欢迎页,把默认页改为空,这样根路径请 求才能走控制器