<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    積少成多

    垃圾堆

      BlogJava :: 首頁 :: 聯(lián)系 :: 聚合  :: 管理
      29 Posts :: 1 Stories :: 5 Comments :: 0 Trackbacks
    Maven的功能
    • 遵循最佳實踐,簡單的建立項目-在分秒之間建立一個新的項目或者模塊。
    • 在多個項目之間統(tǒng)一使用。
    • 依附環(huán)境的管理,包括自動的升級。
    • 方便地在同一時間參加多個項目。
    • 大且不斷增長的庫和元數(shù)據(jù)可供食用。
    • 可擴展,用java或腳本語言開發(fā)插件
    • 加入新的功能只需要很少或不需要額外的配置
    • Ant任務(wù)支持依附環(huán)境管理,在Maven之外進行發(fā)布。
    • 在大多數(shù)情況下,maven不需要腳本就可以編譯多個項目,打包成jar, war或基于元數(shù)據(jù)進行項目發(fā)布
    • 清晰的項目信息:Maven能夠建立一個站點或PDF文檔,其中包括項目的一些基本信息和報表。
    • 版本管理和項目發(fā)布:不需要太多的額外配置,maven會和你的代碼管理器整合,然后基于一定的tag,來幫助管理你的版本。它也可以為其他的項目發(fā)布到一個地方。maven也支持發(fā)布成jar或其他歸檔的文件或是源代碼。
    • 依附管理:maven建議集中管理jar庫。項目客戶可以到集中的jar庫中下載任何包。這允許maven用戶可以在多個項目中公用jar,并鼓勵項目之間的交流。

     

    Maven如何幫助改進我們的開發(fā)過程?

    通過標準的約定和實踐Maven對你的build流程提供幫助,加速你的開發(fā)周期并同時幫助你的項目成功。

    下面我們提供一些例子讓你來運行maven!

    如何建立Maven?

    基本上,maven默認的配置已經(jīng)足夠面對大部分情況了,但是如果你需要修改緩存策略或者設(shè)置http代理,你就需要自己建立一個配置。詳細請參考Guide to Configuring Maven

     

    如何建立我的第一個maven項目?

    我們會使用maven的archetype 機制來建立我們的第一個maven項目。maven中,archetype是項目模版,在加上一些用戶的輸入來建立一個maven的項目。我們會向你展示archetype機制如何工作。更多請參考

     


    創(chuàng)建最簡單的maven項目,只需要執(zhí)行下面的命令就可以了

    mvn archetype:generate \   -DarchetypeGroupId=org.apache.maven.archetypes \   -DgroupId=com.mycompany.app \   -DartifactId=my-app 

    執(zhí)行命令后,首先,你會發(fā)現(xiàn)一個叫my-app的文件夾建立了,其中有pom.xml文件,內(nèi)容如下:

    <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.mycompany.app</groupId>
    <artifactId>my-app</artifactId>
    <packaging>jar</packaging>
    <version>1.0-SNAPSHOT</version>
    <name>Maven Quick Start Archetype</name>
    <url>http://maven.apache.org</url>
    <dependencies>
    <dependency>
    <groupId>junit</groupId>
    <artifactId>junit</artifactId>
    <version>3.8.1</version>
    <scope>test</scope>
    </dependency>
    </dependencies>
    </project>

    pom.xml里有項目的project object model。pom是maven的基本工作單元。This is important to remember because Maven is inherently project-centric in that everything revolves around the notion of a project. 簡單的說,pom包含了所有項目的重要信息。更多請參考Introduction to the POM.

    This is a very simple POM but still displays the key elements every POM contains, so let's walk through each of them


    to familiarize you with the POM essentials:

    • project This is the top-level element in all Maven pom.xml files.
    • modelVersion This element indicates what version of the object model this POM is using. The version of the model itself changes very infrequently but it is mandatory in order to ensure stability of use if and when the Maven developers deem it necessary to change the model.
    • groupId This element indicates the unique identifier of the organization or group that created the project. The groupId is one of the key identifiers of a project and is typically based on the fully qualified domain name of your organization. For example org.apache.maven.plugins is the designated groupId for all Maven plug-ins.
    • artifactId This element indicates the unique base name of the primary artifact being generated by this project. The primary artifact for a project is typically a JAR file. Secondary artifacts like source bundles also use the artifactId as part of their final name. A typical artifact produced by Maven would have the form <artifactId>-<version>.<extension> (for example, myapp-1.0.jar).
    • packaging This element indicates the package type to be used by this artifact (e.g. JAR, WAR, EAR, etc.). This not only means if the artifact produced is JAR, WAR, or EAR but can also indicate a specific lifecycle to use as part of the build process. (The lifecycle is a topic we will deal with further on in the guide. For now, just keep in mind that the indicated packaging of a project can play a part in customizing the build lifecycle.) The default value for the packaging element is JAR so you do not have to specify this for most projects.
    • version This element indicates the version of the artifact generated by the project. Maven goes a long way to help you with version management and you will often see the SNAPSHOT designator in a version, which indicates that a project is in a state of development. We will discuss the use of snapshots and how they work further on in this guide.
    • name This element indicates the display name used for the project. This is often used in Maven's generated documentation.
    • url This element indicates where the project's site can be found. This is often used in Maven's generated documentation.
    • description This element provides a basic description of your project. This is often used in Maven's generated documentation.

    For a complete reference of what elements are available for use in the POM please refer to our POM Reference. Now let's get back to the project at hand.

    After the archetype generation of your first project you will also notice that the following directory structure has been created:

    my-app |-- pom.xml `-- src     |-- main     |   `-- java     |       `-- com     |           `-- mycompany     |               `-- app     |                   `-- App.java     `-- test         `-- java             `-- com                 `-- mycompany                     `-- app                         `-- AppTest.java 

    As you can see, the project created from the archetype has a POM, a source tree for your application's sources and a source tree for your test sources. This is the standard layout for Maven projects (the application sources reside in ${basedir}/src/main/java and test sources reside in ${basedir}/src/test/java, where ${basedir} represents the directory containing pom.xml).

    If you were to create a Maven project by hand this is the directory structure that we recommend using. This is a Maven convention and to learn more about it you can read our Introduction to the Standard Directory Layout.

    Now that we have a POM, some application sources, and some test sources you are probably asking ...


     









     

    posted on 2012-04-16 17:05 思無 閱讀(508) 評論(0)  編輯  收藏

    只有注冊用戶登錄后才能發(fā)表評論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 国色精品va在线观看免费视频| 亚洲久悠悠色悠在线播放| 国产精品小视频免费无限app| 日韩免费观看的一级毛片| 亚洲av无码专区在线电影 | 亚洲av色香蕉一区二区三区蜜桃| 日本h在线精品免费观看| 亚洲图片激情小说| 97国产免费全部免费观看| 亚洲国产午夜精品理论片| 久久午夜免费视频| 久久精品国产亚洲AV| 亚洲午夜爱爱香蕉片| 成人免费乱码大片A毛片| 亚洲AV日韩AV永久无码下载| 1000部拍拍拍18勿入免费视频下载| 亚洲精品在线观看视频| 国产成人A在线观看视频免费| 亚洲一区二区观看播放| 亚洲国产成人久久精品99| 91在线视频免费观看| 亚洲国产精品久久久久婷婷软件| 最近免费中文字幕mv电影| 国产成人亚洲精品| 免费观看午夜在线欧差毛片| 久久久久久av无码免费看大片| 亚洲a在线视频视频| 国产精品无码免费播放| 亚洲第一se情网站| 亚洲精品~无码抽插| 91麻豆最新在线人成免费观看| 亚洲AV无码精品国产成人| 中文字幕人成人乱码亚洲电影| 18以下岁毛片在免费播放| 韩国亚洲伊人久久综合影院| 亚洲国产成人片在线观看| 女人张开腿等男人桶免费视频| 久久WWW免费人成—看片| 亚洲专区中文字幕| 综合亚洲伊人午夜网| 69天堂人成无码麻豆免费视频|