maven3常用命令、java專案搭建、web專案搭建詳細圖解
------------------------------maven3常用命令---------------------------
1、常用命令
1)建立一個Project
mvn archetype:generate -DgroupId=com.mycompany.app -DartifactId=my-app -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false
mvn archetype:generate 固定格式
-DgroupId 組織標識(包名)
-DartifactId 專案名稱
-DarchetypeArtifactId 指定ArchetypeId,maven-archetype-quickstart,建立一個Java Project;maven-archetype-webapp,建立一個Web Project
-DinteractiveMode 是否使用互動模式
2)編譯原始碼
mvn compile
3)編譯測試程式碼
mvn test-compile
4)清空
mvn clean
5)執行測試
mvn test
6)生產站點目錄並打包
mvn site-deploy
7)安裝當前工程的輸出檔案到本地倉庫
mvn install
8)打包
mvn package
9)先清除再打包
mvn clean package
10)打成jar包
mvn jar:jar
11)生成eclipse專案
mvn eclipse:eclipse
12)檢視幫助資訊
mvn help:help
13)檢視maven有哪些專案型別分類
mvn archetype:generate -DarchetypeCatalog=intrenal
2、標準的Maven專案結構
src/main/java 存放專案的原始碼
src/test/java 存放測試原始碼
如果要存放一些配置檔案,可以再建立一個目錄src/main/resource存放,如存放log4j.properties等
------------------------------java專案搭建---------------------------
使用Maven構建一個簡單的Java專案
1、進入命令列,執行下面的語句。
mvn archetype:generate -DgroupId=cn.luxh.app -DartifactId=my-app -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false
執行完成後,可以看到如下結果:
BUILD SUCCESS,當在前使用者目錄下(即C:\Documents and Settings\Administrator)下構建了一個Java Project叫做my-app。
2、進入my-app目錄,可以看到有一個pom.xml檔案,這個檔案是Maven的核心。
1)pom意思就是project object model。
2)pom.xml包含了專案構建的資訊,包括專案的資訊、專案的依賴等。
3)pom.xml檔案是可以繼承的,大型專案中,子模組的pom.xml一般都會繼承於父模組的pom.xml
4)剛構建的pom.xml說明
<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/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>cn.luxh.app</groupId> <artifactId>my-app</artifactId> <packaging>jar</packaging> <version>1.0-SNAPSHOT</version> <name>my-app</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>
節點元素說明:
<project> pom檔案的頂級節點 <modelVersion> object model版本,對Maven2和Maven3來說,只能是4.0.0 <groupId> 專案建立組織的識別符號,一般是域名的倒寫 <artifactId> 定義了專案在所屬組織的識別符號下的唯一標識,一個組織下可以有多個專案 <packaging> 打包的方式,有jar、war、ear等 <version> 當前專案的版本,SNAPSHOT,表示是快照版本,在開發中 <name> 專案的名稱 <url> 專案的地址 <dependencies> 構建專案依賴的jar <description> 專案的描述
其中由groupId、artifactId和version唯一的確定了一個專案座標
3、構建的my-app專案結構如下
1)編譯源程式,進入命令列,切換到my-app目錄,執行命令:mvn clean compile
編譯成功,在my-app目錄下多出一個target目錄,target\classes裡面存放的就是編譯後的class檔案。
2)測試,進入命令列,切換到my-app目錄,執行命令:mvc clean test
測試成功,在my-app\target目錄下會有一個test-classes目錄,存放的就是測試程式碼的class檔案。
3)打包,進入命令列,切換到my-app目錄,執行命令:mvc clean package,執行打包命令前,會先執行編譯和測試命令
構建成功後,會再target目錄下生成my-app-1.0-SNAPSHOT.jar包。
4)安裝,進入命令列,切換到my-app目錄,執行命令:mvc clean install ,執行安裝命令前,會先執行編譯、測試、打包命令
構建成功,就會將專案的jar包安裝到本地倉庫。
5)執行jar包,進入命令列,切換到my-app目錄,執行命令:java -cp target\my-app-1.0-SNAPSHOT.jar cn.luxh.app.App
------------------------------web專案搭建---------------------------
1、進入命令列,執行:
mvn archetype:generate -DgroupId=cn.luxh.app -DartifactId=my-web-app -DarchetypeArtifactId=maven-archetype-webapp -DinteractivMode=false
出現一些版本號確認等直接回車就行,構建成功出現下面的提示。
在當前使用者目錄下,生成的web專案目錄結構如下:
2、當然這個空的專案,只有一個index.jsp頁面,打包釋出執行。
1)在命令列切換到my-web-app目錄,執行:mvn package,構建成功後,my-web-app目錄下多了一個target目錄,在這個目錄下會打包成my-web-app.war,把這個war包拷貝到Tomcat的釋出目錄下就可以運行了。
2)整合Jetty釋出執行,需要配置pom.xml。
<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/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>cn.luxh.app</groupId> <artifactId>my-web-app</artifactId> <packaging>war</packaging><!--web專案預設打包方式 war--> <version>1.0-SNAPSHOT</version> <name>my-web-app Maven Webapp</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> <build> <finalName>my-web-app</finalName> <pluginManagement> <!--配置Jetty--> <plugins> <plugin> <groupId>org.mortbay.jetty</groupId> <artifactId>maven-jetty-plugin</artifactId> </plugin> </plugins> </pluginManagement> </build> </project>
然後執行:mvn jetty:run 就可以在8080埠上訪問應用了。
相關推薦
maven3常用命令 4 java專案搭建、web專案搭建詳細圖解
------------------------------maven3常用命令--------------------------- 1、常用命令 1)建立一個Project mvnarchetype:generate -DgroupId=com.mycompa
maven3常用命令、java專案搭建、web專案搭建詳細圖解
------------------------------maven3常用命令--------------------------- 1、常用命令 1)建立一個Project mvn archetype:generate -DgroupId=com.my
移位運算、Arrays中的copyOf、java.util.AbstractCollection、linux命令之tail
xca eid width gte 技術分享 blank strac eba tail 移位運算:http://www.cnblogs.com/hongten/p/hongten_java_yiweiyunsuangfu.html。 ---------- Arrays中的c
ethereum入門-常用命令示例(節點添加、查看等)
ethereum查看自己節點信息 > admin.nodeInfo{enode: "enode://0911f6d8c58bb0013fe520fc63282c50892a1c1e2a6c3b2471572491673f849790a275d0f827afb4fcd1140f84f320ae
zookeeper概念、應用場景、資料組織、叢集搭建、客戶端操作、Java客戶端、curator
一、zookeeper簡介 1.1 zookeeper簡介 Apache的很多專案以動物來命令,比如Hadoop(大象)、Hive(小蜜蜂)、Pig(豬豬),這些專案都是hadoop生態系統的成員。Hadoop生態系統是為了解決大資料儲存、大資料計算和大資料資料分析的,解決大
關於服務的建立常用命令(redis服務建立、啟動、停止、刪除)
在windows下將redis註冊為本地服務的兩種(多種)方法 亭子青年 關注 2018.01.11 23:29* 字數 946 閱讀 1237評論 1喜歡 3 簡介 簡單的通過控制檯啟動redis server非常簡單,但是同時也帶來一個問題,如果控制檯關
mysql資料庫中命令列下常用命令的操作(增、刪、改、查)和資料型別
identified by ""; 第四招: 操作資料庫 登入到mysql中,然後在mysql的提示符下執行下列命令,每個命令以分號結束。 1、 顯示資料庫列表。 show databases; 預設有兩個資料庫:mysql和 test。 mysql庫存放著mysql的系統和使
Linux常用命令之檔案查詢which、find、locate命令講解
在之前的課程中,我們介紹了Linux系統的常用檔案處理命令和許可權管理命令,今天我們繼續來學習Linux作業系統的其他處理命令。 1、檔案搜尋命令 `which` 命令解釋 - 命令名稱:`which` - 命令所在路徑: `/usr/bin/which` - 執行許可權:所有使用者 - 命令功能:顯示系
Java的JDK安裝、java環境配置、eclipse下載使用
JDK安裝、java環境配置、eclipse下載使用 JDK是Java語言的軟體開發工具包,主要用於移動裝置、嵌入式裝置上的java應用程式。JDK是整個java開發的核心,它包含了JAVA的執行環境,JAVA工具和JAVA基礎的類庫。 JRE(Java Runtime Environmen
JDBC資料型別、Java資料型別、標準sql型別
本概述是從《JDBCTM Database Access from JavaTM: A Tutorial and Annotated Reference》這本書中摘引來的。JavaSoft 目前正在準備這本書。這本書是一本教程,同時也是 JDBC 的重要參考手冊,它將作為 Java 系列的組成部份,
Java物件和例項的關係、Java資料封裝、Java繼承和多型、Java抽象類和介面、Java靜態欄位和方法、Java包和作用域、Java的classpath和jar、Java核心類
Java物件和例項的關係: 面向物件程式設計(Object-Oriented Programming),是對現實世界建立計算機模型的一種方法。 class是物件的模板,它定義瞭如何建立例項,class的名字就是資料型別。一個class裡可以有多個欄位(field),欄位用
【Bruce小鬼】專注效能測試、介面測試、java測試開發、自動化測試
專欄達人 授予成功建立個人部落格專欄
redis專項練習二redis常用命令以及java呼叫方式
目錄 一、redis的資料型別 二、redis對key的相關操作 1、redis客戶端命令列 2、java程式碼呼叫 三、Redis字串型別的操作 1、redis客戶
Elasticsearch Java client(ES Client 簡介、Java REST Client、Java Client、Spring Data Elasticsearch) elasticsearch系列七:ES Java客戶端-Elasticsearch Java client(E
elasticsearch系列七:ES Java客戶端-Elasticsearch Java client(ES Client 簡介、Java REST Client、Java Client、Spring Data Elasticsearch) 一、ES Client 簡介 1. ES是一個服務
jython環境安裝、java呼叫python、中文亂碼問題
1、jython安裝 jython下載地址 http://www.jython.org/downloads.html (1)直接雙擊“jython-installer-2.7.0.jar”一步步安裝即可 (2)配置環境變數, 新建系統環境變數: JYTHON_HO
處理器、程序、執行緒、並行、併發、記憶體模型的相關概念、併發程式設計中的三個概念 、Java記憶體模型、剖析volatile關鍵字、用volatile關鍵字的場景
處理器:即中央處理器(CPU,Central Processing Unit),它是一塊超大規模的積體電路,是一臺計算機的運算核心(Core)和控制核心( Control Unit)。它的功能主要是解釋計算機指令以及處理計算機軟體中的資料。 程序:程序(Process)是計算機中的程式關
三、JAVA多執行緒:Thread API詳細介紹 (sleep、Interrupt、Join、TimeUnit、yield、interrupted、執行緒優先順序 )
本章深入分析了Thread的所有API,熟練掌握Thread的API是學好Thread的前提。 執行緒sleep sleep是一個靜態方法,一共有兩個過載方法,一個需要傳入毫秒數,另一個既要傳入毫秒數又要傳入納秒數。 sleep方法介紹
(一)ArrayList和LinkedList的原理、Java程式碼實現、效能比較
一、ArrayList1.1、陣列和集合的區別 動態大小,即陣列的大小不可變,集合的大小可變。 ArrayList從名字上來講是陣列列表,表面上是動態大小,其底層實現原理其實還是一個數組。1.2、簡單模擬ArrayList 模擬過程中要注意Array和Arr
Java常用命令及Java Dump
執行緒Dump,包含所有執行緒的執行狀態。純文字格式。 堆Dump,包含執行緒Dump,幵包含所有堆物件的狀態。二進位制格式。 Java Dump方法 1.使用Java虛擬機制作Dump 指示虛擬機器在發生記憶體不足錯誤時,自動生成堆Dump -XX:+HeapDumpOn
myeclipse&eclipse配置tomcat埠、配置從根目錄訪問web專案
myeclipse 配置tomcat埠 視窗——》配置——》myeclipse——》8080 配置從根目錄訪問web專案 2.修改之後,重新部署專案,會提示要恢復tomcat安裝,不然不能部署。 eclipse 配置埠 配置從根目錄訪問we