mac上安裝並使用maven建立web專案
阿新 • • 發佈:2019-01-24
1、去官網下載maven,這裡我下載的是3.5.2版本。
2、將下載的壓縮檔案解壓到一個資料夾中,這裡我解壓到了Library/maven中。
3、開啟終端,輸入如下命令:
vi ~/.bash_profile
開啟mac的系統環境變數配置檔案,然後按下“i“鍵,對檔案進行編輯,輸入內容如下(在此之前需要現配置好Java):
M2_HOME=/Library/maven/apache-maven-3.5.2 PATH=$JAVA_HOME/bin:$M2_HOME/bin:$PATH
然後按“esc“退出編輯模式,進入命令模式,再在命令列輸入“:wq“進行儲存並退出操作。maven的環境變數配置完畢
4、通過以下命令檢測maven是否配置完全:
mvn -version
出現如下內容即可:
Apache Maven 3.5.2 (138edd61fd100ec658bfa2d307c43b76940a5d7d; 2017-10-18T15:58:13+08:00)
Maven home: /Library/maven/apache-maven-3.5.2
Java version: 1.8.0_144, vendor: Oracle Corporation
Java home: /Library/Java/JavaVirtualMachines/jdk1.8.0_144.jdk/Contents/Home/jre
Default locale: zh_CN, platform encoding: UTF-8
OS name: "mac os x", version: "10.13.2", arch: "x86_64", family: "mac"
5、再在命令列輸入:
mvn archetype:generate -DgroupId=cn.everlook.myweb -DartifactId=myweb -DarchetypeArtifactId=maven-archetype-webapp
建立資料夾為myweb的maven專案
6、開啟idea開發工具,匯入專案,開啟myweb下的pom.xml檔案一直下一步即可,完成專案搭建。
7、匯入成功之後,開啟WEB_INF下的web.xml,版本是2.3的,我們需要去tomcat目錄下找xml頭的配置資訊,我的tomcat的web.xml檔案地址
/Library/Tomcat8.0/webapps/examples/WEB-INF/web.xml
用終端vim web.xml進入之後複製其頭部web-app的宣告。
8、專案配置的目錄結構如下圖:
9、以上步驟完成之後開啟pom.xml檔案
將junit的version修改為4.11(這個版本是使用註解的形式來執行junit)。
下面是補全專案依賴的程式碼(完成專案搭建):
<dependencies>
<!--使用junit4,可以用註解的形式執行junit-->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
<scope>test</scope>
</dependency>
<!--補全專案依賴-->
<!--1、日誌 Java日誌:slf4j,log4j,logback,common-logging
slf4j:是規範/介面
-->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.12</version>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-core</artifactId>
<version>1.1.1</version>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.1.1</version>
</dependency>
<!--資料庫相關依賴-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.35</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>c3p0</groupId>
<artifactId>c3p0</artifactId>
<version>0.9.1.2</version>
</dependency>
<!--DAO框架:mybatis依賴-->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.3.0</version>
</dependency>
<!--mybatis自身實現的spring整合依賴-->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis-spring</artifactId>
<version>1.2.3</version>
</dependency>
<!--Servlet web相關依賴-->
<dependency>
<groupId>taglibs</groupId>
<artifactId>standard</artifactId>
<version>1.1.2</version>
</dependency>
<dependency>
<groupId>jstl</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.5.4</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
</dependency>
<!--spring依賴:核心依賴-->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>4.1.7.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>4.1.7.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>4.1.7.RELEASE</version>
</dependency>
<!--spring dao層依賴-->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>4.1.7.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-tx</artifactId>
<version>4.1.7.RELEASE</version>
</dependency>
<!--spring web相關依賴-->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>4.1.7.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>4.1.7.RELEASE</version>
</dependency>
<!--spring testi 相關依賴-->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
<version>4.1.7.RELEASE</version>
</dependency>
</dependencies>