新聞中心
Maven是一個流行的Java項目管理工具,用于構(gòu)建和維護Java應(yīng)用程序。它提供了一種簡單的方法來管理項目的依賴關(guān)系,并允許您自動下載所需的庫文件和相關(guān)文件。如果您使用Linux系統(tǒng),并且想要開始使用Maven,那么本篇文章將為您提供一個詳細的指南,告訴您如何下載和安裝Maven。

在網(wǎng)站設(shè)計制作、成都做網(wǎng)站過程中,需要針對客戶的行業(yè)特點、產(chǎn)品特性、目標受眾和市場情況進行定位分析,以確定網(wǎng)站的風格、色彩、版式、交互等方面的設(shè)計方向。成都創(chuàng)新互聯(lián)還需要根據(jù)客戶的需求進行功能模塊的開發(fā)和設(shè)計,包括內(nèi)容管理、前臺展示、用戶權(quán)限管理、數(shù)據(jù)統(tǒng)計和安全保護等功能。
步驟1:準備下載
在開始之前您需要確定您需要的Maven版本,并訪問Maven的官方網(wǎng)站 https://maven.apache.org/download.cgi 下載對應(yīng)的版本。例如,如果您想要下載Maven 3.8.1,則應(yīng)首先找到Maven 3.8.1的下載鏈接,并單擊下載按鍵。下載將開始并自動保存在您的Linux系統(tǒng)的默認下載目錄中。
步驟2:解壓縮Maven
一旦下載完成,您需要進入下載目錄并解壓Maven。您可以使用以下命令解壓縮Maven:
tar -zxvf apache-maven-3.8.1-bin.tar.gz
請注意,此命令假定您已經(jīng)將Maven下載到/tmp目錄中。您應(yīng)該將此命令中的版本號更改為您下載的Maven版本號。
步驟3:移動Maven
解壓縮Maven后,您應(yīng)該將其移動到適當?shù)哪夸浿?,?usr/local/maven。您可以使用以下命令將Maven移動到該目錄中:
sudo mv apache-maven-3.8.1 /usr/local/maven
此命令假定您使用的是Maven 3.8.1版本。請注意,這是一個需要超級用戶權(quán)限的命令,因此您需要使用sudo命令。
步驟4:設(shè)置環(huán)境變量
在將Maven安裝到適當?shù)奈恢煤螅枰渲铆h(huán)境變量,以便Linux系統(tǒng)可以找到Maven。您可以使用nano或vim之類的編輯器來編輯/etc/environment文件,并添加以下內(nèi)容:
MAVEN_HOME=/usr/local/maven
PATH=$PATH:$MAVEN_HOME/bin
請注意,如果您將Maven安裝到其他目錄中,您應(yīng)該使用所選目錄的路徑替換/usr/local/maven 。
步驟5:更新環(huán)境
為了使更改生效,您需要運行以下命令來更新當前環(huán)境:
source /etc/environment
步驟6:測試Maven
一旦您已經(jīng)完成上述所有步驟,您可以測試Maven是否已正確安裝。要測試Maven,請運行以下命令:
mvn -version
如果Maven正確安裝,則會顯示Maven版本信息。
結(jié)論
Maven是一個有用的Java項目管理工具,可在Linux操作系統(tǒng)上輕松下載和安裝。按照以上步驟完成在Linux系統(tǒng)上下載并安裝Maven,您可以開始使用Maven來管理您的Java項目。希望我們提供的這份指南對您有幫助。
相關(guān)問題拓展閱讀:
- 打造自己的滲透測試框架—溯光
打造自己的滲透測試框架—溯光
TrackRay簡介
溯光,英文名“TrackRay”,意為逆光而行,追溯光源。同時致敬安全圈前輩開發(fā)的“溯雪”,“流光”。
溯光是一個開源的插件化滲透測試框架,框架自身實現(xiàn)了漏洞掃描功能,集成了老牌安全工具:Metasploit、Nmap、Sqlmap、AWVS等。
溯光使用 Java 編寫,SpringBoot 作為基礎(chǔ)框架,JPA + HSQLDB嵌入式數(shù)據(jù)庫做持久化,Maven 管理依賴,Jython 實現(xiàn) Python 插件調(diào)用,quartz 做任務(wù)調(diào)度,freemarker + thymeleaf 做視圖層,Websocket 實現(xiàn)命令行豎洞式插件交互。
框架可擴展性高,支持 Java、Python、ON 等方式編寫插件,有“漏洞掃描插件”、“爬蟲插件”、“MVC插件”、“內(nèi)部插件”、“無交互插件”和“可交互插件” 等插件類型。
功能展示
>>>>主頁
>>>>登錄
>>>>任務(wù)創(chuàng)建
>>>>任務(wù)列表
>>>>任務(wù)詳情
>>>>無交互接口插件調(diào)用
>>>>MVC插件示例余者枯
>>>>交互式插件控制臺
>>>>MSF 控制臺
依賴環(huán)境
JDK 1.8
Python 2.7
Maven
Git
Metasploit
Nmap(建議安裝)
SQLMAP(建議安裝)
AWVS
**加嫌早粗為必須環(huán)境,沒有安裝程序則無法正常編譯運行
不論是 Windows 還是 linux 一定需要先安裝 JDK1.8 和 Maven。安裝過程這里不做演示。保證 JDK 和 Maven 都在系統(tǒng)環(huán)境變量,能執(zhí)行java -version 和 mvn –version即可。
安裝過程
>>>>之一步
手動啟動 AWVS 服務(wù)
登錄后臺,生成一個API密匙。
復制密匙和 AWVS 的地址。
找到web/src/main/resources/application.properties配置文件。
修改如下部分
>>>>第二步
找到你 python 的第三方庫目錄。
Windows 的一般在 python 安裝目錄下的/Lib/site-packages
Linux 下可以通過輸出 sys.path 來找第三方包路徑
我的是 D:/Python2/Lib/site-packages
同樣找到web/src/main/resources/application.properties配置文件。
修改python.package.path參數(shù)
>>>>第三步
安裝 Maven 后找到倉庫位置。
如果沒有在 settings.xml 里配置指定倉庫目錄,默認會在當前用戶目錄中生成一個 .m2的目錄
找到倉庫目錄后修改 application.properties 的 maven.repository.path參數(shù)
>>>>第四步
這個是 DNSLOG 回顯檢測漏洞時需要的。
去 ceye.io 注冊一個賬號,拿到給你分配的域名和 TOKEN。
修改配置文件
>>>>第五步
啟動 msf 和 sqlmapapi。
如果你是 kali 操作系統(tǒng),可以直接運行startdep.sh。
如果是其他系統(tǒng),則要找到 metasploit 和 sqlmap 的目錄分別執(zhí)行
啟動成功后修改配置文件
>>>>第六步
編譯打包程序
等待依賴下載完成和編譯完成,如果以上操作都沒有出現(xiàn)問題則會提示 BUILD SUCCESS
編譯成功后會在當前目錄打包一個trackray.jar就是溯光的主程序。
然后直接執(zhí)行startup.bat或startup.sh溯光就會啟動服務(wù)。
沒有拋出異?;駿RROR日志,訪問 8080 端口正常。
服務(wù)啟動正常后,登錄 iZone 社區(qū)賬號。
**開發(fā)插件建議使用 Intellij IDEA IDE,需要安裝 lombok 插件。
目錄結(jié)構(gòu)
插件
AbstractPlugin
這是交互式插件和非交互式插件的父類。
BASE常量
其中的靜態(tài)常量 BASE 是 /resources/include/ 的所在目錄。
如果你的插件需要額外的靜態(tài)資源,那么你可以在 /resources/include 目錄里創(chuàng)建一個和插件 KEY 相同的文件夾,便于識別,如果沒有在 @Plugin 注解中設(shè)置 value 則默認的插件 KEY 就是當前類名首字母小寫。
如 Typecho001 = typecho001
check(Map param)
這是用于檢驗是否合規(guī)的方法,需要被強制重寫,當返回 true 時才會調(diào)用 start() 方法
param 參數(shù)是從前臺傳過來的參數(shù)鍵值對。
常被用于檢驗參數(shù)格式是否正確或漏洞是否存在。
after()
在 start() 方法之前調(diào)用
before()
在 start() 方法之后調(diào)用
start()
這是一個抽象方法,所有繼承了該類的子類都需要重寫這個方法。
在
check 方法
通過后會調(diào)用 start() 方法
start() 方法返回值最終會會當做插件結(jié)果,響應(yīng)給前臺。
shell()
調(diào)用當前系統(tǒng) shell 來輔助完成插件功能。
executor()
插件執(zhí)行的主方法
crawlerPage
http請求對象(不推薦使用)
fetcher
執(zhí)行 http 請求對象(不推薦使用)
errorMsg
當校驗不通過時,返回給前臺的信息。
param
前臺傳過來的參數(shù)鍵值對
requests
HTTP 發(fā)包工具(推薦使用)
hackKit
hack 常用工具包
無交互插件
無交互插件需要你填寫好所有要填寫的參數(shù),直接請求接口來執(zhí)行插件。
默認需要去繼承 CommonPlugin類。
這是一個抽象類,繼承了 AbstractPlugin
主要多出來兩個屬性:request 和 response。
繼承了 CommonPlugin 的類可以通過調(diào)用這兩個屬性來控制請求和響應(yīng)內(nèi)容。
無交互插件同時也需要使用 @Rule 和 @Plugin 插件,這兩個注解后面會講到。
在
或直接調(diào)用接口。
交互式插件
交互式插件一般在命令行控制臺中調(diào)用,可以允許你通過命令行交互來完成插件的調(diào)用。
交互式插件由 Websocket 實現(xiàn),想要寫一個交互式插件,首先要繼承 WebSocketPlugin 類。
同時設(shè)置 @Rule 注解的 websocket 參數(shù)為 true ,如果需要異步交互需要將 sync 也設(shè)置為 true。
內(nèi)部插件
內(nèi)部插件是不可以通過外部去調(diào)用的,需要繼承 InnerPlugin 并使用 @Plugin 注解,通常在漏洞掃描時時會調(diào)用。
例如 “網(wǎng)頁爬蟲”,“指紋識別”,“端口掃描” 等,都是通過調(diào)用內(nèi)部插件實現(xiàn)的。
還有用于檢測 SSRF 等漏洞用的 FuckCeye 插件也屬于內(nèi)部插件。
通過 spring 的自動注入,來注入內(nèi)部插件到當前對象。
例子可參考 WebLogicWLSRCE.java
爬蟲插件
爬蟲插件會在掃描任務(wù)被勾選“網(wǎng)頁爬蟲”時調(diào)用,每爬取一條請求就會調(diào)用一次爬蟲插件。
爬蟲插件需要繼承 CrawlerPlugin,繼承該類必須重寫 check 和 process 方法。
check 方法用于檢驗請求是否符合插件規(guī)則,以免產(chǎn)生多余請求。
當
check 方法
返回為 true 時會調(diào)用 process 方法。
process 方法里寫插件主要檢測代碼。
addVulnerable()
當插件檢測出漏洞時,可以通過調(diào)用 addVulnerable() 方法來向數(shù)據(jù)庫插入一條漏洞。
requests
requests 屬性為請求工具包,處理 https 和 http 都很方便。
response
response 屬性為當前爬蟲得到的 HTTP 響應(yīng)。
task
task 屬性為當前任務(wù)對象,如果你的爬蟲插件不是檢測漏洞而希望是檢測一些敏感信息的話可以修改 task.getResult() 里的屬性。
參考 FingerProbe.java 或 InfoProbe.java。
target
爬蟲爬取到的 URL 對象。
fetcher & crawlerPage
http 請求對象(不建議使用)。
漏洞掃描插件
漏洞掃描插件會在,掃描任務(wù)中勾選“漏洞攻擊模塊”時調(diào)用。
漏洞掃描插件分為三種
1.獨立插件
獨立的漏洞掃描插件需要繼承 AbstractExploit 并使用 @Plugin 或 @Exploit
AbstractExploit 中有以下需要了解的方法和屬性。
requests
http / https 發(fā)包工具
target 當前掃描任務(wù)的地址。
task
當前掃描任務(wù)對象。
check()
check 是一個抽象方法,需要被子類強制重寫。
該方法一般用于檢驗是否符合當前漏洞掃描插件的規(guī)則,以免產(chǎn)生多與請求。
attack()
attack 也是一個抽象方法,需要被子類強制重寫。
該方法是檢測漏洞的主方法。
before()
在 attack 方法前執(zhí)行
after()
在 attack 方法后執(zhí)行
addVulnerable()
當插件檢測出漏洞時,可以通過調(diào)用 addVulnerable() 方法來向數(shù)據(jù)庫插入一條漏洞。
fetcher & crawlerPage
http 請求對象(不建議使用)。
2.漏洞規(guī)則
位于
實際上這是一個“內(nèi)部插件”,會在勾選漏洞模塊攻擊時調(diào)用。
有一些漏洞檢測方法很簡單,只通過簡單的判斷響應(yīng)體就能識別出來,也就沒有必要再去寫一個獨立的插件而占用空間了。
在 doSwitch() 方法中會先去根據(jù)當前任務(wù)的指紋識別結(jié)果走一遍 switch 流程。
swtich 的每一個 case 都是 WEB 指紋的枚舉對象。
當 switch 找到當前任務(wù) WEB 指紋對應(yīng)的 case 后,case 內(nèi)的代碼會通過構(gòu)建一個漏洞規(guī)則添加到 loaders 里。
如果規(guī)則是通用的,可以寫在 switch 的外面。
3.kunpeng ON插件
kunpeng 是一個 go 語言編寫的 poc 測試框架,這里我對 kunpeng 的 ON 插件做了一個支持。
只需要按照 kunpeng json 插件的格式規(guī)范創(chuàng)建一個 json 文件到 /resources/json 目錄。
在掃描任務(wù)勾選“漏洞攻擊模塊”時會被調(diào)用,或通過 MVC 插件調(diào)用
MVC 插件
位于
MVC 插件的特點在于,他可以像是在寫一個功能一樣,而非簡單的接口式調(diào)用。
MVC 插件需要繼承 MVCPlugin 類,并使用 @Rule,@Plugin 注解。
MVCPlugin 內(nèi)置了一個 ModelAndView 對象, 是 SpringMVC 提供的。
可以通過 setViewName() 來指定視圖層的網(wǎng)頁模板。
通過 addObject(key,value) 向視圖層網(wǎng)頁模板注入?yún)?shù)。
這里的視圖層是使用 thymeleaf 實現(xiàn)的,需要懂 thymeleaf 的語法。
例子可以參考:com.trackray.module.inner.ONPlugin
繼承 MVCPlugin 必須要重寫一個 index 方法,這是插件的入口。
如果需要寫其他的功能,就得再創(chuàng)建一個 public 返回值為 void 的無參方法。
并且要在該方法上使用 @Function 注解,該注解的 value 參數(shù)如果不填寫的話則默認的 requestMapping 地址為方法名。
例如
最后還需要在 /module/src/main/resources/templates 創(chuàng)建一個目錄名為插件 KEY 的目錄。
里面存放擴展名為 .html 的模板文件。
Python 插件
python 插件有兩種實現(xiàn)方式。
1.通過命令行實現(xiàn)
這種方式最為簡單,通過在 include 里寫一個 python 腳本。
然后在插件里調(diào)用 shell() 方法來執(zhí)行系統(tǒng)命令。
案例可參考 com.trackray.module.plugin.windows.b.MS17010
但這樣還需要再寫 java 的代碼,對于沒有學過 java 的人來說很不友好。
2.通過jython實現(xiàn)
jython 是一個 Python 語言在 Java 中的完全實現(xiàn)。
我將它的調(diào)用過程寫成了一個交互式插件。
你可以通過在 /resources/python/ 目錄下安裝如下規(guī)范去創(chuàng)建一個 python 文件。
在這個 python 文件中需要寫兩個方法。
關(guān)于注解
@Rule
一般用在“可交互插件”和“無交互插件”類上。
@Plugin
WEB指紋
這里順便再說一下如何添加指紋庫。
指紋庫位于 base 模塊,是一個枚舉類。
可以在首部或尾部添加一條新的枚舉,盡量使用 $ 開頭。
之一個參數(shù)是 指紋的名稱,如果第二個參數(shù)是 String 類型則是該指紋的說明。
FingerBean 類是指紋匹配對象。
linux下載安裝maven的介紹就聊到這里吧,感謝你花時間閱讀本站內(nèi)容,更多關(guān)于linux下載安裝maven,輕松學習:Linux上下載安裝Maven指南,打造自己的滲透測試框架—溯光的信息別忘了在本站進行查找喔。
創(chuàng)新互聯(lián)服務(wù)器托管擁有成都T3+級標準機房資源,具備完善的安防設(shè)施、三線及BGP網(wǎng)絡(luò)接入帶寬達10T,機柜接入千兆交換機,能夠有效保證服務(wù)器托管業(yè)務(wù)安全、可靠、穩(wěn)定、高效運行;創(chuàng)新互聯(lián)專注于成都服務(wù)器托管租用十余年,得到成都等地區(qū)行業(yè)客戶的一致認可。
分享名稱:輕松學習:Linux上下載安裝Maven指南(linux下載安裝maven)
分享地址:http://m.fisionsoft.com.cn/article/dhcjhsj.html


咨詢
建站咨詢
