網站首頁 編程語言 正文
文章目錄
- 一、關于Maven
- 1.Maven的概念
- 2.Maven的作用
- 二、Maven的配置及使用
- 1.Maven 依賴管理流程
- 2.Maven的配置
- 三、新建maven項目
- 四、添加外部jar包
- 1.查找依賴信息
- 2.添加依賴至pom.xml
- 3.加載依賴
- 4.代碼測試
- 五、Maven項目jar導入失敗解決方案
- 1.檢查配置
- 2.刪除jar包
- 3.使用Maven重新生成依賴
- 六、Maven生命周期
一、關于Maven
1.Maven的概念
Maven 是?個項?構建?具,創建的項?只要遵循 Maven 規范(稱為Maven項?),即可使? Maven 來進?:管理 jar 包、編譯項?,打包項?等功能。
為什么學習 Servlet 之前要學 Maven?
因為 Servlet 是框架,要使? Maven 進? jar 包管理和項?打包和發布。
2.Maven的作用
- 導?外部 jar 包
- 打包項?
- 發布項?
二、Maven的配置及使用
Maven ?需安裝,因為 Idea 已經?帶了,打開 Idea 的設置頁面settings,在搜索框中輸入“Maven”就能找到 Maven,如下圖所示:
1.Maven 依賴管理流程
Maven 項?中可以引?依賴包(引?外部框架的 jar 包),引?后,加載依賴包的?式為在 Maven 倉庫 中搜索。
Maven倉庫可以理解為存放依賴包的倉庫,分為本地倉庫和遠程倉庫兩種。
本地倉庫地址在 Idea 中可以找到,如下圖所示:
2.Maven的配置
Maven的數據源默認是國外的數據源,所以下載 jar 會很慢,且經常出差,所以?定要配置本機的 Maven 源 為國內源,它的配置?法如下:
1.找到maven的settings.xml配置文件
默認情況下電腦上有這個文件。
如果沒有,解決方法如下:
復制settings.xml文件名,這里不建議手寫,因為手寫出錯的可能性更大,會導致后面下載jar包失敗。
【注】:配置文件目錄是不能出現中文的。 如果出現中文字符,需要在Users的下一級目錄新建xx\.m2文件,一定要改成英文文件名。
在配置文件目錄的.m2文件中新建settings.xml文件
將下列代碼復制到settings.xml文件中。
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
<pluginGroups>
pluginGroups>
<proxies>
proxies>
<servers>
servers>
<mirrors>
mirrors>
<profiles>
profiles>
settings>
2.打開settings.xml文件,找到鏡像,將下列代碼復制到鏡像集合中并保存。
<mirror>
<id>alimavenid>
<name>aliyun mavenname>
<url>http://maven.aliyun.com/nexus/content/groups/public/url>
<mirrorOf>centralmirrorOf>
mirror>
這段代碼的意思是配置國內源,現在使用最多的是阿里的源和網易的源,這里配置的是阿里的源(maven.aliyun.com),當下載jar包的時候從url所定義的網站進行下載。
3.勾選Idea中配置文件和本地倉庫的Override
之后點擊OK即可。
這一步設置完成后僅僅是設置了當前項目的配置信息,當打開一個新項目后,需要重新配置,很麻煩。所以需要進行下一步的設置。
3.配置新項目的maven國內源
重復前面的操作配置新項目的maven國內源。
三、新建maven項目
四、添加外部jar包
以jdbc的jar包為例。
1.查找依賴信息
在mvn中央倉庫(相當于應用商城,所有開發者所需的jar包都在這里),找到對應的依賴信息。
中央倉庫的地址如下:
https://mvnrepository.com/
根據本地電腦mysql的版本選擇一個對應版本,點擊進入。
2.添加依賴至pom.xml
復制maven的依賴信息到Idea項目的pom.xml里。
3.加載依賴
點擊加載按鈕,重新加載當前項目的依賴。
4.代碼測試
連接本地數據庫,查詢信息。
import com.mysql.jdbc.Connection;
import com.mysql.jdbc.jdbc2.optional.MysqlDataSource;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
public class App {
public static void main(String[] args) throws SQLException {
//1.得到DataSource
MysqlDataSource dataSource = new MysqlDataSource();
dataSource.setURL("jdbc:mysql://127.0.0.1:3306/java33?character=utf-8&useSSL=true");
dataSource.setUser("root");
dataSource.setPassword("123456");
//2.得到Connection
Connection connection = (Connection) dataSource.getConnection();
//3.拼接sql并執行
String sql = "select * from student where id = ?";
PreparedStatement statement = connection.prepareStatement(sql);
statement.setInt(1,2);
//4.執行查詢
ResultSet resultSet = statement.executeQuery();
if(resultSet.next()){
//表示有數據
System.out.println("用戶名: "+ resultSet.getString("username"));
System.out.println("郵箱:"+ resultSet.getString("mail"));
}
//5.關閉資源
resultSet.close();
statement.close();
connection.close();
}
}
運行結果:
代碼成功運行,說明依賴已經成功地添加到項目當中,并且可以正常使用。
五、Maven項目jar導入失敗解決方案
1.檢查配置
①檢查Maven下的settings.xml是否配置并勾選了國內源
②檢查settings.xml文件里是否設置了阿里云的鏡像
2.刪除jar包
打開本地倉庫,刪除里面包含的所有jar包。
3.使用Maven重新生成依賴
如果經過前三個步驟仍然存在錯誤,那么更換網絡,繼續進行前三步的操作,直至沒有問題為止。
六、Maven生命周期
Maven構建?具主要?的就是對Maven項?進?管理,這些都是通過Maven的?命周期命令來管 理的。在IDEA創建的Maven項?中,打開Maven?板,展開項?的Lifecycle即為?命周期命令:
- clean: 清空之前編譯生成的臨時文件
當一個java文件編譯之后,會生成相應的字節碼文件target,clean用于刪除該字節碼文件。
- validate:驗證合法性
驗證pom.xml是否正確,以及依賴是否都已經下載好了。 - compile:編譯
自動調用javac把你的代碼中的.java都編譯成.class。 - test:單元測試
自動執行test這個目錄中的單元測試代碼(一般是搭配junit 來完成的)。 - package:(最常用的)進行打包
- verify:確認
也是一個校驗動作,往往是對測試結果進行檢測。(集成測試) - install:安裝.
把你程序部署到某個本地的目錄中,供其他程序使用。 - site: 生成網站的報告信息。
- deploy: 部署到中央倉庫。
原文鏈接:https://blog.csdn.net/m0_52478073/article/details/124763860
相關推薦
- 2022-08-02 linux?shell文件轉碼iconv命令的使用_linux shell
- 2022-04-29 C++對象排序的比較你了解嗎_C 語言
- 2022-06-02 ubuntu安裝jupyter并設置遠程訪問的實現_python
- 2023-02-17 Go語言Gin處理響應方式詳解_Golang
- 2022-05-28 基于ASP.NET實現驗證碼生成詳解_實用技巧
- 2022-07-17 C語言超詳細講解指針的使用_C 語言
- 2022-12-22 python實現將list拼接為一個字符串_python
- 2022-09-27 使用Python?matplotlib繪制簡單的柱形圖、折線圖和直線圖_python
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支