摘要:用創(chuàng)建項(xiàng)目組織標(biāo)識(shí)包名項(xiàng)目名稱指定,,創(chuàng)建一個(gè),創(chuàng)建一個(gè)是否使用交互模式其中,為項(xiàng)目骨架類型,可選擇的有每一個(gè)骨架都會(huì)建相應(yīng)的目錄結(jié)構(gòu)和一些通用文件,最常用的是和骨架。再比如這告訴來(lái)從模板創(chuàng)建項(xiàng)目。
用maven創(chuàng)建項(xiàng)目
mvn archetype:generate -DgroupId=cn.codingxiaxw.seckill -DartifactId=seckill -Dpackage=cn.codingxiaxw.seckill -Dversion=1.0-SNAPSHOT -DarchetypeArtifactId=maven-archetype-webapp
-DgroupId 組織標(biāo)識(shí)(包名)
-DartifactId 項(xiàng)目名稱
-DarchetypeArtifactId 指定ArchetypeId,maven-archetype-quickstart,創(chuàng)建一個(gè)Java Project;maven-archetype-webapp,創(chuàng)建一個(gè)Web Project
-DinteractiveMode 是否使用交互模式
其中,archetypeArtifactId為項(xiàng)目骨架類型,可選擇的有:
maven-archetype-archetype
maven-archetype-j2ee-simple
maven-archetype-mojo
maven-archetype-portlet
maven-archetype-profiles (currently under development)
maven-archetype-quickstart
maven-archetype-simple (currently under development)
maven-archetype-site
maven-archetype-site-simple
maven-archetype-webapp
每一個(gè)骨架都會(huì)建相應(yīng)的目錄結(jié)構(gòu)和一些通用文件,最常用的是maven-archetype-quickstart和maven-archetype-webapp骨架。maven-archetype-quickstart骨架是用來(lái)創(chuàng)建一個(gè)Java Project,而maven-archetype-webapp骨架則是用來(lái)創(chuàng)建一個(gè)JavaWeb Project。
這里創(chuàng)建的是webapp。
再比如:
mvn archetype:generate -DgroupId={project-packaging} -DartifactId={project-name}-DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false
這告訴 Maven 來(lái)從 maven-archetype-quickstart 模板創(chuàng)建 Java 項(xiàng)目。如果忽視 archetypeArtifactId 選項(xiàng),一個(gè)巨大的 Maven 模板列表將列出。
BUILD SUCCESS就表示項(xiàng)目構(gòu)建成功,當(dāng)在前用戶目錄下(即C:Documents and SettingsAdministrator)下構(gòu)建了一個(gè)Java Project叫做myapp。
pom文件說(shuō)明在pom文件中導(dǎo)入需要的包:
4.0.0 cn.codingxiaxw.seckill seckill war 1.0-SNAPSHOT seckill Maven Webapp http://maven.apache.org junit junit 4.11 test org.slf4j slf4j-api 1.7.12 ch.qos.logback logback-core 1.1.1 ch.qos.logback logback-classic 1.1.1 mysql mysql-connector-java 5.1.35 runtime c3p0 c3p0 0.9.1.1 org.mybatis mybatis 3.3.0 org.mybatis mybatis-spring 1.2.3 taglibs standard 1.1.2 jstl jstl 1.2 com.fasterxml.jackson.core jackson-databind 2.5.4 javax.servlet javax.servlet-api 3.1.0 org.springframework spring-core 4.1.7.RELEASE org.springframework spring-beans 4.1.7.RELEASE org.springframework spring-context 4.1.7.RELEASE org.springframework spring-jdbc 4.1.7.RELEASE org.springframework spring-tx 4.1.7.RELEASE org.springframework spring-web 4.1.7.RELEASE org.springframework spring-webmvc 4.1.7.RELEASE org.springframework spring-test 4.1.7.RELEASE redis.clients jedis 2.7.3 com.dyuproject.protostuff protostuff-core 1.0.8 com.dyuproject.protostuff protostuff-runtime 1.0.8 seckill org.apache.maven.plugins maven-compiler-plugin 8
pom.xml文件是可以繼承的,大型項(xiàng)目中,子模塊的pom.xml一般都會(huì)繼承于父模塊的pom.xml
pom.xml文件的節(jié)點(diǎn)元素說(shuō)明:
pom文件的頂級(jí)節(jié)點(diǎn) object model版本,對(duì)Maven2和Maven3來(lái)說(shuō),只能是4.0.0 項(xiàng)目創(chuàng)建組織的標(biāo)識(shí)符,一般是域名的倒寫 定義了項(xiàng)目在所屬組織的標(biāo)識(shí)符下的唯一標(biāo)識(shí),一個(gè)組織下可以有多個(gè)項(xiàng)目 當(dāng)前項(xiàng)目的版本,SNAPSHOT,表示是快照版本,在開(kāi)發(fā)中 打包的方式,有jar、war、ear等 項(xiàng)目的名稱 項(xiàng)目的地址 屬性配置,比如: UTF-8 構(gòu)建項(xiàng)目依賴的jar
其中由groupId、artifactId和version唯一的確定了一個(gè)項(xiàng)目坐標(biāo)
常用maven命令:
1,mvn package
說(shuō)明: 項(xiàng)目打包工具,會(huì)在模塊下的target目錄生成jar或war等文件
2,mvn clean
說(shuō)明: 清理項(xiàng)目生產(chǎn)的臨時(shí)文件,一般是模塊下的target目錄
3,mvn test
說(shuō)明: 測(cè)試命令,或執(zhí)行src/test/java/下junit的測(cè)試用例.
4,mvn install
說(shuō)明: 模塊安裝命令 將打包的的jar/war文件復(fù)制到你的本地倉(cāng)庫(kù)中,供其他模塊使用 -Dmaven.test.skip=true 跳過(guò)測(cè)試(同時(shí)會(huì)跳過(guò)test compile)
5,mvn deploy
說(shuō)明: 發(fā)布命令 將打包的文件發(fā)布到遠(yuǎn)程參考,提供其他人員進(jìn)行下載依賴 ,一般是發(fā)布到公司的私服
6,mvn compile
前面我們按照maven約束好的文件路徑建好項(xiàng)目后,加入pom.xml 在命令行輸入mvn compile后,maven就會(huì)自動(dòng)幫我們下載依賴jar,為代碼生成字節(jié)碼文件等。我們把這個(gè)過(guò)程稱為 編譯。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/69066.html
摘要:一用途在創(chuàng)建項(xiàng)目的時(shí)候,可以自己手動(dòng)創(chuàng)建,也可以利用工具創(chuàng)建,也就是來(lái)創(chuàng)建??梢杂脕?lái)創(chuàng)建項(xiàng)目部署項(xiàng)目安裝管理依賴編譯代碼管理二進(jìn)制等。的目的是使項(xiàng)目過(guò)程規(guī)范化自動(dòng)化高效化及強(qiáng)大的可擴(kuò)展性。 一、maven用途 java在創(chuàng)建項(xiàng)目的時(shí)候,可以自己手動(dòng)創(chuàng)建,也可以利用工具創(chuàng)建,也就是maven來(lái)創(chuàng)建。 maven可以用來(lái)創(chuàng)建項(xiàng)目、部署項(xiàng)目、安裝管理依賴、編譯代碼、管理二進(jìn)制等。 mave...
摘要:在之前,十個(gè)項(xiàng)目可能有十種構(gòu)建方式,但通過(guò),所有項(xiàng)目的構(gòu)建命令都是簡(jiǎn)單一致的。有利于促進(jìn)項(xiàng)目團(tuán)隊(duì)的標(biāo)準(zhǔn)化。手工勞動(dòng)往往意味著低效,意味著容易出錯(cuò)。這在很大程度上消除了重復(fù)。默認(rèn)情況下,該文件夾下放置了本地倉(cāng)庫(kù)。學(xué)習(xí)實(shí)戰(zhàn)許曉斌著 Introduction Maven是一個(gè)異常強(qiáng)大的構(gòu)建工具,能夠幫我們自動(dòng)化構(gòu)建過(guò)程,從清理、編譯、測(cè)試到生成報(bào)告,再到打包和部署。通過(guò)Maven,我們只需要...
摘要:采用了一種被稱之為概念來(lái)管理項(xiàng)目,所有的項(xiàng)目配置信息都被定義在一個(gè)叫做的文件中,通過(guò)該文件,可以管理項(xiàng)目的整個(gè)聲明周期,包括編譯,構(gòu)建,測(cè)試,發(fā)布,報(bào)告等等。目前下絕大多數(shù)項(xiàng)目都已經(jīng)采用進(jìn)行管理。 前言:對(duì)于微軟技術(shù)死忠的筆者來(lái)說(shuō),學(xué)習(xí)JAVA靈活又復(fù)雜的技術(shù)是件多么痛苦的事,開(kāi)始想念我大微軟簡(jiǎn)單的開(kāi)發(fā)環(huán)境搭建以及完整詳盡的開(kāi)發(fā)文檔,還有那一看就懂的案例教程了...可是為了工作,依舊不...
摘要:添加的的依賴,可以從項(xiàng)目的中拷貝使用命令編譯項(xiàng)目。在子模塊中我們可以這樣使用引入父模塊坐標(biāo)三使用建立項(xiàng)目新建一個(gè)項(xiàng)目,選擇,如圖所示在中配置插件可參見(jiàn)官方文檔。部署項(xiàng)目到即可。 一、Maven入門 1.下載maven Maven是基于項(xiàng)目對(duì)象模型(Project Object Model),可以通過(guò)一小段描述信息來(lái)管理項(xiàng)目的構(gòu)建、報(bào)告和文檔的項(xiàng)目管理工具,提供了一個(gè)倉(cāng)庫(kù)的概念,統(tǒng)一...
摘要:項(xiàng)目構(gòu)建基礎(chǔ)從屬于筆者的現(xiàn)代開(kāi)發(fā)基礎(chǔ)系列文章,介紹了的歷史背景與多種構(gòu)建工具對(duì)比,以及的基本配置安裝與使用本文涉及的參考資料聲明在學(xué)習(xí)與實(shí)踐資料索引以及學(xué)習(xí)與資料索引。 Maven 項(xiàng)目構(gòu)建基礎(chǔ)從屬于筆者的現(xiàn)代 Java 開(kāi)發(fā)基礎(chǔ)系列文章,介紹了 Maven 的歷史背景與多種構(gòu)建工具對(duì)比,以及 Maven 的基本配置安裝與使用;本文涉及的參考資料聲明在 Java 學(xué)習(xí)與實(shí)踐資料索引以及...
閱讀 3744·2021-11-25 09:43
閱讀 2612·2021-11-18 13:11
閱讀 2238·2019-08-30 15:55
閱讀 3284·2019-08-26 11:58
閱讀 2837·2019-08-26 10:47
閱讀 2243·2019-08-26 10:20
閱讀 1283·2019-08-23 17:59
閱讀 3016·2019-08-23 15:54