当前位置:首页 > 行业软件及应用 >

Maven文档实战(IDEA)

PDF超清版

时间:2020-04-10 11:16:19大小:2.24 MB已被679人关注 资源下载

袁峻熙
袁峻熙

一、 回顾[理解] 

1. Maven 的好处 

  节省磁盘空间 

可以一键构建 

  可以跨平台 

  应用在大型项目时可以提高开发效率 

2.  安装配置 maven 

  注意:3.3+版本需要 jdkj.7+以上的支持 

北京市昌平区建材城西路金燕龙办公楼一层   电话:400-618-9090 

3.  三种仓库  

  本地仓库 

  远程仓库(私服) 

  中央仓库 

4.  常见的命令 

Compile 

Test 

Package 

Install 

Deploy 

Clean 

5. 坐标的书写规范 

groupId  公司或组织域名的倒序 

artifactId 项目名或模块名 

version  版本号 

6. 如何添加坐标 

1、在本地仓库中搜索 

7. 依赖范围 

Runtime 

Provided 

二、 maven 构建 SSM 工程[应用] 

1. 需求 

实现 SSM 工程构建,规范依赖管理。场景:根据 id 展示商品信息 

2. 准备数据库 

导入以下语句 

3. 创建一个 maven工程 

1、新建一个 ssm_maven 项目,使用下图选中的骨架 

2、填写坐标 

3、查看是否使用的自己的私服 

5、在 main 目录下新建 java 和 resources文件夹 

6、把 java 和 resources文件夹转成source root 

7、修改编译版本,在 pom.xml 文件中添加 

4. 知识点准备 

4.1 什么是依赖传递 

先添加 springmvc的核心依赖的坐标 

<dependencies>   <dependency>     <groupId>org.springframework</groupId>     <artifactId>spring-webmvc</artifactId>     <version>4.2.4.RELEASE</version>   </dependency> </dependencies> 

会发现出现除了 spring-webmvc 以外的其他 jar。因为我们的项目依赖 spring-webmv.jar,而

spring-webmv.jar 会依赖spring-beans.jar 等等,所以 spring-beans.jar 这些 jar 包也出现在了我

们的 maven 工程中,这种现象我们称为依赖传递。从下图中可看到他们的关系:(请注意

spring-beans 的版本) 

已被280人点赞
Java修改maven的默认jdk版本为1.7的方法
Java修改maven的默认jdk版本为1.7的方法

问题:

1、创建maven项目的时候,jdk版本是1.5版本,而自己安装的是1.7或者1.8版本。

2、每次右键项目名-maven->update project 时候,项目jdk版本变了,变回1.5版本或者其他版本

解决办法:

解决办法一:在项目中的pom.xml指定jdk版本,如下: 

<build> 
    <plugins> 
      <plugin> 
        <groupId>org.apache.maven.plugins</groupId> 
        <artifactId>maven-compiler-plugin</artifactId> 
        <version>3.1</version> 
        <configuration> 
          <source>1.7</source> 
          <target>1.7</target> 
        </configuration> 
      </plugin> 
    </plugins> 
  </build>

这个方法只能保证该项目是jdk1.7版本,每次新建项目都得加上面代码,不推荐使用,推荐第二种方法。

解决方法二:在maven的安装目录找到settings.xml文件,在里面添加如下代码

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

添加完后,在对eclipse进行设置。window->preferences->maven->user settings,user settings那里选择maven安装目录下的settings.xml文件。如下图

Java修改maven的默认jdk版本为1.7的方法

设置完成后,右键项目->maven->update project,这样每次新建maven项目都默认为jdk1.8版本了

 解决方法三:

在解决方法二中,user settings的默认settigs.xml文件路径为:c:\users\Hxinguan\.m2\settings.xml,如下图。只要把设置好的settings.xml文件复制到该目录下,然后update project就好了。

Java修改maven的默认jdk版本为1.7的方法

总结

以上所述是小编给大家介绍的Java修改maven的默认jdk版本为1.7的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对码农之家网站的支持!

已被591人点赞
导出maven项目依赖的jar包(图文教程)
导出maven项目依赖的jar包(图文教程)

注意使用mvn命令是需要配置好maven的环境变量

导出maven项目依赖的jar包(图文教程)

导出maven项目依赖的jar包(图文教程)

一、导出到自定义目录中

在maven项目下创建lib文件夹,输入以下命令:
mvn dependency:copy-dependencies -DoutputDirectory=lib
maven项目所依赖的jar包都会复制到项目目录下的lib目录下

这是我需要导出的jar包:

导出maven项目依赖的jar包(图文教程)

项目的根目录:

导出maven项目依赖的jar包(图文教程)

打开cmd,进入项目根目录(pom.xml文件也在这里),并执行目录,lib文件如没有手动创建也会自动创建:
导出maven项目依赖的jar包(图文教程)

稍等片刻,maven便完成了复制
导出maven项目依赖的jar包(图文教程)
导出maven项目依赖的jar包(图文教程)

二、导出到默认目录 targed/dependency

从Maven项目中导出项目依赖的jar包:进入工程pom.xml 所在的目录下,执行如下命令:
mvn dependency:copy-dependencies
或在eclipse中,选择项目的pom.xml文件,点击右键菜单中的Run As,见下图红框中,在弹出的Configuration窗口中,输入 dependency:copy-dependencies后,点击运行
 maven项目所依赖的jar包会导出到targed/dependency目录中。

三、设置依赖级别

同时可以设置依赖级别,通常使用compile级别

mvn dependency:copy-dependencies -DoutputDirectory=lib -DincludeScope=compile

说明:从网上搜索到的方法,加上了自己的补充

以上这篇导出maven项目依赖的jar包(图文教程)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持码农之家。

已被448人点赞
使用maven生成可执行的jar包的方法
使用maven生成可执行的jar包的方法

本文介绍了使用maven生成可执行的jar包的方法,分享给大家,具体如下:

从pom的xsi中可以打开描述pom的schema:

使用maven生成可执行的jar包的方法

可以看到pom中,project的结构:

使用maven生成可执行的jar包的方法

默认的mvn install生成的jar是不带主类入口的,需要在maven-compile-plugin中设置主类,

使用maven生成可执行的jar包的方法

<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.cetc.di</groupId>
 <artifactId>hellocetc</artifactId>
 <version>0.0.1-SNAPSHOT</version>
 <packaging>jar</packaging>

 <name>hellocetc</name>
 <url>http://maven.apache.org</url>



 <properties>
  <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
 </properties>

 <dependencies>
  <dependency>
   <groupId>junit</groupId>
   <artifactId>junit</artifactId>
   <version>3.8.1</version>
   <scope>test</scope>
  </dependency>
 </dependencies>
 
 
<build>
<pluginManagement>
<plugins>
<plugin>
  <groupId>org.apache.maven.plugins</groupId>
  <artifactId>maven-jar-plugin</artifactId>
  <configuration>
    <source>1.8</source>
    <target>1.8</target>
    <archive>
      <manifest>
        <mainClass>com.cetc.di.hellocetc.App</mainClass>
        <addClasspath>true</addClasspath>
      <classpathPrefix>lib/</classpathPrefix>
      </manifest>

    </archive>
    <classesDirectory>
    </classesDirectory>
  </configuration>
</plugin>
</plugins>  
</pluginManagement>
</build> 
</project>

执行mvn install:

使用maven生成可执行的jar包的方法

在target目录中,发现jar包已经生成:

使用maven生成可执行的jar包的方法

用java decompiler,可以看到manifest中已经加入了MainClass:

使用maven生成可执行的jar包的方法

使用mvn help:effective-pom可以看到pom.xml的完整结构(包括继承而来的属性):

使用maven生成可执行的jar包的方法

[INFO] Scanning for projects...
[INFO]                                     
[INFO] ------------------------------------------------------------------------
[INFO] Building hellocetc 0.0.1-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO] 
[INFO] --- maven-help-plugin:2.2:effective-pom (default-cli) @ hellocetc ---
[INFO] 
Effective POMs, after inheritance, interpolation, and profiles are applied:

<!-- ====================================================================== -->
<!--                                    -->
<!-- Generated by Maven Help Plugin on 2015-11-18T08:05:12         -->
<!-- See: http://maven.apache.org/plugins/maven-help-plugin/        -->
<!--                                    -->
<!-- ====================================================================== -->

<!-- ====================================================================== -->
<!--                                    -->
<!-- Effective POM for project 'com.cetc.di:hellocetc:jar:0.0.1-SNAPSHOT'  -->
<!--                                    -->
<!-- ====================================================================== -->

<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.cetc.di</groupId>
 <artifactId>hellocetc</artifactId>
 <version>0.0.1-SNAPSHOT</version>
 <name>hellocetc</name>
 <url>http://maven.apache.org</url>
 <properties>
  <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
 </properties>
 <dependencies>
  <dependency>
   <groupId>junit</groupId>
   <artifactId>junit</artifactId>
   <version>3.8.1</version>
   <scope>test</scope>
  </dependency>
 </dependencies>
 <repositories>
  <repository>
   <snapshots>
    <enabled>false</enabled>
   </snapshots>
   <id>central</id>
   <name>Central Repository</name>
   <url>https://repo.maven.apache.org/maven2</url>
  </repository>
 </repositories>
 <pluginRepositories>
  <pluginRepository>
   <releases>
    <updatePolicy>never</updatePolicy>
   </releases>
   <snapshots>
    <enabled>false</enabled>
   </snapshots>
   <id>central</id>
   <name>Central Repository</name>
   <url>https://repo.maven.apache.org/maven2</url>
  </pluginRepository>
 </pluginRepositories>
 <build>
  <sourceDirectory>D:\Users\a\Workspaces\MyEclipse 2015\hellocetc\src\main\java</sourceDirectory>
  <scriptSourceDirectory>D:\Users\a\Workspaces\MyEclipse 2015\hellocetc\src\main\scripts</scriptSourceDirectory>
  <testSourceDirectory>D:\Users\a\Workspaces\MyEclipse 2015\hellocetc\src\test\java</testSourceDirectory>
  <outputDirectory>D:\Users\a\Workspaces\MyEclipse 2015\hellocetc\target\classes</outputDirectory>
  <testOutputDirectory>D:\Users\a\Workspaces\MyEclipse 2015\hellocetc\target\test-classes</testOutputDirectory>
  <resources>
   <resource>
    <directory>D:\Users\a\Workspaces\MyEclipse 2015\hellocetc\src\main\resources</directory>
   </resource>
  </resources>
  <testResources>
   <testResource>
    <directory>D:\Users\a\Workspaces\MyEclipse 2015\hellocetc\src\test\resources</directory>
   </testResource>
  </testResources>
  <directory>D:\Users\a\Workspaces\MyEclipse 2015\hellocetc\target</directory>
  <finalName>hellocetc-0.0.1-SNAPSHOT</finalName>
  <pluginManagement>
   <plugins>
    <plugin>
     <artifactId>maven-antrun-plugin</artifactId>
     <version>1.3</version>
    </plugin>
    <plugin>
     <artifactId>maven-assembly-plugin</artifactId>
     <version>2.2-beta-5</version>
    </plugin>
    <plugin>
     <artifactId>maven-dependency-plugin</artifactId>
     <version>2.8</version>
    </plugin>
    <plugin>
     <artifactId>maven-release-plugin</artifactId>
     <version>2.3.2</version>
    </plugin>
    <plugin>
     <artifactId>maven-jar-plugin</artifactId>
     <version>2.4</version>
     <configuration>
      <source>1.8</source>
      <target>1.8</target>
      <archive>
       <manifest>
        <mainClass>com.cetc.di.hellocetc.App</mainClass>
        <addClasspath>true</addClasspath>
        <classpathPrefix>lib/</classpathPrefix>
       </manifest>
      </archive>
      <classesDirectory />
     </configuration>
    </plugin>
   </plugins>
  </pluginManagement>
  <plugins>
   <plugin>
    <artifactId>maven-clean-plugin</artifactId>
    <version>2.5</version>
    <executions>
     <execution>
      <id>default-clean</id>
      <phase>clean</phase>
      <goals>
       <goal>clean</goal>
      </goals>
     </execution>
    </executions>
   </plugin>
   <plugin>
    <artifactId>maven-resources-plugin</artifactId>
    <version>2.6</version>
    <executions>
     <execution>
      <id>default-testResources</id>
      <phase>process-test-resources</phase>
      <goals>
       <goal>testResources</goal>
      </goals>
     </execution>
     <execution>
      <id>default-resources</id>
      <phase>process-resources</phase>
      <goals>
       <goal>resources</goal>
      </goals>
     </execution>
    </executions>
   </plugin>
   <plugin>
    <artifactId>maven-jar-plugin</artifactId>
    <version>2.4</version>
    <executions>
     <execution>
      <id>default-jar</id>
      <phase>package</phase>
      <goals>
       <goal>jar</goal>
      </goals>
      <configuration>
       <source>1.8</source>
       <target>1.8</target>
       <archive>
        <manifest>
         <mainClass>com.cetc.di.hellocetc.App</mainClass>
         <addClasspath>true</addClasspath>
         <classpathPrefix>lib/</classpathPrefix>
        </manifest>
       </archive>
       <classesDirectory />
      </configuration>
     </execution>
    </executions>
    <configuration>
     <source>1.8</source>
     <target>1.8</target>
     <archive>
      <manifest>
       <mainClass>com.cetc.di.hellocetc.App</mainClass>
       <addClasspath>true</addClasspath>
       <classpathPrefix>lib/</classpathPrefix>
      </manifest>
     </archive>
     <classesDirectory />
    </configuration>
   </plugin>
   <plugin>
    <artifactId>maven-compiler-plugin</artifactId>
    <version>3.1</version>
    <executions>
     <execution>
      <id>default-compile</id>
      <phase>compile</phase>
      <goals>
       <goal>compile</goal>
      </goals>
     </execution>
     <execution>
      <id>default-testCompile</id>
      <phase>test-compile</phase>
      <goals>
       <goal>testCompile</goal>
      </goals>
     </execution>
    </executions>
   </plugin>
   <plugin>
    <artifactId>maven-surefire-plugin</artifactId>
    <version>2.12.4</version>
    <executions>
     <execution>
      <id>default-test</id>
      <phase>test</phase>
      <goals>
       <goal>test</goal>
      </goals>
     </execution>
    </executions>
   </plugin>
   <plugin>
    <artifactId>maven-install-plugin</artifactId>
    <version>2.4</version>
    <executions>
     <execution>
      <id>default-install</id>
      <phase>install</phase>
      <goals>
       <goal>install</goal>
      </goals>
     </execution>
    </executions>
   </plugin>
   <plugin>
    <artifactId>maven-deploy-plugin</artifactId>
    <version>2.7</version>
    <executions>
     <execution>
      <id>default-deploy</id>
      <phase>deploy</phase>
      <goals>
       <goal>deploy</goal>
      </goals>
     </execution>
    </executions>
   </plugin>
   <plugin>
    <artifactId>maven-site-plugin</artifactId>
    <version>3.3</version>
    <executions>
     <execution>
      <id>default-site</id>
      <phase>site</phase>
      <goals>
       <goal>site</goal>
      </goals>
      <configuration>
       <outputDirectory>D:\Users\a\Workspaces\MyEclipse 2015\hellocetc\target\site</outputDirectory>
       <reportPlugins>
        <reportPlugin>
         <groupId>org.apache.maven.plugins</groupId>
         <artifactId>maven-project-info-reports-plugin</artifactId>
        </reportPlugin>
       </reportPlugins>
      </configuration>
     </execution>
     <execution>
      <id>default-deploy</id>
      <phase>site-deploy</phase>
      <goals>
       <goal>deploy</goal>
      </goals>
      <configuration>
       <outputDirectory>D:\Users\a\Workspaces\MyEclipse 2015\hellocetc\target\site</outputDirectory>
       <reportPlugins>
        <reportPlugin>
         <groupId>org.apache.maven.plugins</groupId>
         <artifactId>maven-project-info-reports-plugin</artifactId>
        </reportPlugin>
       </reportPlugins>
      </configuration>
     </execution>
    </executions>
    <configuration>
     <outputDirectory>D:\Users\a\Workspaces\MyEclipse 2015\hellocetc\target\site</outputDirectory>
     <reportPlugins>
      <reportPlugin>
       <groupId>org.apache.maven.plugins</groupId>
       <artifactId>maven-project-info-reports-plugin</artifactId>
      </reportPlugin>
     </reportPlugins>
    </configuration>
   </plugin>
  </plugins>
 </build>
 <reporting>
  <outputDirectory>D:\Users\a\Workspaces\MyEclipse 2015\hellocetc\target\site</outputDirectory>
 </reporting>
</project>

[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 0.526 s
[INFO] Finished at: 2015-11-18T20:05:12+08:00
[INFO] Final Memory: 10M/245M
[INFO] ------------------------------------------------------------------------

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

已被852人点赞
下载地址:百度网盘下载
相关资源
微服务运维实战:第一卷
微服务运维实战:第一卷 完整清晰版

《微服务运维实战(第1卷)》 详细讲解微服务和容器在软件持续集成和部署中的应用。将微服务打包成不可变的容器,通过配置管理工具实现自动化测试和持续部署,同时保证零停机且随时能

立即下载
高性能响应式Web开发实战
高性能响应式Web开发实战 完整版 立即下载
精通引动APP测试实战:技术、工具和案例
精通引动APP测试实战:技术、工具和案例 高清版

精通引动APP测试实战:技术、工具和案例 全面讲解了移动平台测试方面的技术、技巧、工具和测试用例等实战知识。内容涵盖主流的测试工具,包括JUnit、Monkey、MonkeyRunner、Robotium、UIAutomator、

立即下载
重新定义SPRING CLOUD实战
重新定义SPRING CLOUD实战 清晰扫描版

本书由Spring Cloud中国社区官方撰写,基于Spring Cloud的Finchley.RELEASE版本,核心成员来自原阿里、蚂蚁金服、金融等互联网企业,经验丰富。

立即下载
Spark大数据商业实战三部曲
Spark大数据商业实战三部曲 超清扫描版

本书基于Spark 2.2.X,以Spark商业案例实战和Spark在生产环境下几乎所有类型的性能调优为核心,循序渐进地全面解析了Spark 2.2,完全全面,欢迎下载

立即下载
Elasticsearch实战
Elasticsearch实战 中文扫描版

一本书主要展现怎么使用Elasticsearch搭建可拓展的搜索手机应用程序。书中遮盖了Elasticsearch的主要特点,从使用不同的粉碎室和查询网站类型进行关联性调优,到使用集聚功能进行实时性分析,

立即下载
Angular 2开发实战:基于TypeScript
Angular 2开发实战:基于TypeScript 影印完整版

不论是开发Web手机客户端应用程序還是全功能性的单页面应用程序流程,Angular2Web框架结构都能产生一种释放式的感受。它的申明式设计风格使其便于界定和加上作用,而不用手工制作编写很多

立即下载
摄影后期抠图与合成实战宝典
摄影后期抠图与合成实战宝典 原书扫描版

图像的合成是数码摄影后期创作中经常需要使用的技法,要掌握图像的合成技术,同时也要掌握抠图技术。本书主要就是针对照片抠图与合成而展开介绍的

立即下载
Spark大数据分析技术与实战
Spark大数据分析技术与实战 高清版

大数据技术新手阅读; 做为高等学校计算机相关技术专业的研究生学习参考文献; 全部想要对大数据技术有一定的掌握并要想将大数据技术运用于做好本职工作的阅读者阅读。 Spark做为下一代

立即下载
区块链实战
区块链实战 全书高清版 立即下载

Copyright 2018-2020 www.xz577.com 码农之家

版权投诉 / 书籍推广 / 赞助:520161757@qq.com