Maven入坑(一) Hello world

Maven 專題

Maven 是什么

Maven 是 Java平臺(tái)的構(gòu)建管理,依賴管理和項(xiàng)目信息管理的工具. 相當(dāng)于 PHP 的 Composer , Nodejs 的 npm , Objective-C 的 cocoapods .

安裝

請(qǐng)自行百度,這里不再贅述.

全局設(shè)置最佳實(shí)踐

修改 Maven 的全局設(shè)置的時(shí)候,最好不要直接修改 Maven 安裝目錄下的 conf/settings.xml(Linux 下默認(rèn)路徑為 /etc/maven/settings.xml , Mac 下默認(rèn)路徑為 /usr/local/Cellar/maven/{你的 maven 版本號(hào)}/libexec/conf/settings.xml) , 而是將 settings.xml 復(fù)制到 ~/.m2/ 下再進(jìn)行修改

加速

因?yàn)?Maven 默認(rèn)使用的是國外鏡像, 導(dǎo)致國內(nèi)訪問速度比較慢, 可以使用國內(nèi)的鏡像來進(jìn)行加速,設(shè)置方式如下:

  1. 復(fù)制 Maven 目錄下的 conf 文件夾下的 settings.xml 到 ~/.m2/ 下
  2. 編輯 settings.xml,在<settings><mirrors></mirrors></settings>內(nèi)的內(nèi)容改為
    ( PS: url標(biāo)簽 中的路徑可能會(huì)失效,如果失效請(qǐng)自行百度查找最近可用資源.)
    <mirror>
    <id>nexus-local</id>
    <mirrorOf>central</mirrorOf>
    <name>local</name>
    <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
    </mirror>

Maven 的 Hello world

  1. 創(chuàng)建項(xiàng)目目錄HelloWorld

  2. 在項(xiàng)目目錄中創(chuàng)建 pom.xml (project Object Model : 項(xiàng)目對(duì)象模型)文件,內(nèi)容如下
    <?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>hello-world</artifactId>
     <version>0.0.1-SNAPSHOT</version>
    
     <name>Hello world</name>
     <description>Hello world</description>
    
     <build>
       <plugins>
         <plugin>
           <groupId>org.apache.maven.plugins</groupId>
           <artifactId>maven-shade-plugin</artifactId>
           <version>2.4.3</version>
           <executions>
             <execution>
               <phase>package</phase>
               <goals>
               <goal>shade</goal>
               </goals>
               <configuration>
                 <transformers>
                   <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
                     <mainClass>com.example.HelloWorld</mainClass>
                   </transformer>
                 </transformers>
               </configuration>
             </execution>
           </executions>
         </plugin>
       </plugins>
     </build>
    </project>
    
  3. 編寫 java 文件
    package com.example;

    public class HelloWorld{
       public String sayHello(){
           return "Hello world";
       }
    
       public static void main(String[] args){
           System.out.println(new HelloWorld().sayHello());
       }
    }
    
  4. 編譯
    mvn package

  5. 運(yùn)行
    java -jar target/hello-world-0.0.1-SNAPSHOT.jar

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 134,837評(píng)論 18 139
  • 原文鏈接:http://www.dropwizard.io/1.2.0/docs/getting-started....
    Lance_Xu閱讀 928評(píng)論 0 0
  • 前言什么是 POMQuick Overview POM 常用元素 pom.xml 完整注釋 參考 0 前言 什么是...
    阿父閱讀 12,648評(píng)論 1 36
  • 我jdk版本是1.7.0_95,在網(wǎng)上查了一下1.7屬于java7maven3.3+版本都支持java7,所以我使...
    liangxifeng833閱讀 1,282評(píng)論 0 2
  • 當(dāng)看到一篇優(yōu)質(zhì)內(nèi)容時(shí),看完之后總是讓人覺得非常暢快,甚至一篇長達(dá)2000字的文章輕松看完。可是我們大多情況下看了不...
    王小錘子閱讀 564評(píng)論 1 11