本文爲博主辛苦總結,但願本身之後返回來看的時候理解更深入,也但願能夠起到幫助初學者的做用.
轉載請註明 出自 : luogg的博客園 謝謝配合!
與maven功能相似的技術,ant,gitjava
maven是一個跨平臺的項目管理工具,主要用於基於java平臺的項目構建,依賴管理.git
(jdk必須1.6以上)spring
1.解壓
2.將須要的jar包放入m2文件夾,倉庫
3.修改setting.xml,將localRepository
元素中的路徑指向m2jar包路徑
4.修改環境變量tomcat
setting.xml中配置倉庫路徑localRepository的時候千萬別用中文路徑eclipse
src/main/java : (Source Folder)存放項目的java文件
src/main/resources 存放項目的資源文件,如spring,hibernate的配置文件
src/test/java 存放全部的測試的java文件
src/test/resources 存放測試用的資源文件
target 項目輸出位置
pom.xml 文件(座標)maven
svn -v(ersion)svn
若沒有安裝成功,多是環境變量沒有配置工具
pom.xml文件中每個jar包都有一個座標
座標是由groupId,artifactId,version,scop組成的,scope默認是compile.學習
groupId : 一個組織測試
artifactID : 項目名稱
version : 版本號
JAR文件的名字 = artifactID-version
mvn compile : 編譯,編譯以後生成target目錄,裏邊存放class文件.
mvn clean : 清空target目錄
mvn test : 編譯並生成報告
mvn package : 打包成jar包
mvn install : 將jar包部署到倉庫
清理->編譯->測試->報告->打包->部署
若是項目B須要依賴於項目A , 那麼,在項目B的pom.xml中須要寫入依賴關係 :
xml <dependencies> <dependency> //組名,基本一個組下邊全部項目,groupID都同樣 <groupId>com.itheima11</groupId> //項目名 <artifactId>Hello</artifactId> //版本號 <version>0.0.1-SNAPSHOT</version> </dependency> </dependencies>
須要先建立一個workingSet
建立的時候,選擇maven骨架,atrifactID爲maven-archetype-quickstart
run as macen build, goals : 輸入compile
建立maven項目以後,默認用的jdk1.5的版本,須要換成本機的jdk版本.
依賴的傳遞 : 若項目A依賴於項目B,項目C又依賴於項目A,那麼項目C會去依賴於項目B的,
maven的繼承 : 若項目Base中有junit依賴,HelloBase工程也有junit依賴,那麼HelloBase依賴於Base的話,就不須要再寫junit依賴了.繼承了Base中的依賴.
咱們將基類Base中pom.xml中的<packaging>pom</packaging>
設置爲pom格式, 在HelloBase工程下邊,用parent的格式引入Base中pom依賴的包
xml <parent> <groupId>com.itheima11.maven</groupId> <artifactId>Base</artifactId> <version>0.0.1-SNAPSHOT</version> </parent>
setting.xml的配置中, 先從本地庫找對應的jar包,若是本地庫找不到,就去網上找,配置了私服的話, 就去私服找,經過私服,去網上找.
私服的使用須要在setting.xml文件中配置.
修改setting.xml配置文件,
<servers> <server> <id>tomcat7</id> <username>admin</username> <password>admin</password> </server> </servers> <mirrors> <mirror> <id>alimaven</id> <mirrorOf>central</mirrorOf> <name>aliyun maven</name> <url>http://maven.aliyun.com/nexus/content/repositories/central/</url> </mirror> <mirror> <id>repo1</id> <mirrorOf>central</mirrorOf> <name>Human Readable Name for this Mirror.</name> <url>http://repo1.maven.org/maven2/</url> </mirror> <mirror> <id>repo2</id> <mirrorOf>central</mirrorOf> <name>Human Readable Name for this Mirror.</name> <url>http://repo2.maven.org/maven2/</url> </mirror> </mirrors>