教你代碼中獲取當(dāng)前?JAR?包的存放位置
如何獲取當(dāng)前 JAR 包的存放位置
提示:文章寫完后,目錄可以自動生成,如何生成可參考右邊的幫助文檔
前言
代碼中如何獲取打包后的jar包存放的位置?
要獲取當(dāng)前運(yùn)行的 JAR 包所存放的位置,可以使用 ProtectionDomain 和 CodeSource 類。
代碼:
import java.net.URL;
import java.security.CodeSource;
import java.security.ProtectionDomain;
public class Main {
public static void main(String[] args) {
// 獲取當(dāng)前類的保護(hù)域
ProtectionDomain protectionDomain = Main.class.getProtectionDomain();
// 獲取代碼源
CodeSource codeSource = protectionDomain.getCodeSource();
// 獲取代碼源的位置
URL location = codeSource.getLocation();
// 獲取 JAR 包的路徑
String jarPath = location.getPath();
System.out.println("JAR Path: " + jarPath);
}
}注意:這種方法適用于獨(dú)立的可執(zhí)行 JAR 包。如果你的代碼是作為依賴項(xiàng)運(yùn)行在其他項(xiàng)目或容器中,可能會得到不同的結(jié)果。在這種情況下,獲取 JAR 包位置的方法可能會有所不同。
如何找到j(luò)ar包在本地倉庫的位置
第一種:怎么定位pom文件的某個(gè)依賴在本地倉庫的位置
鼠標(biāo)選中此依賴,就會彈出一個(gè)彈框,彈框里的路徑就是此依賴在本地倉庫的位置.
即使不選中依賴彈出彈框,此依賴的groupid + artifactid+version 所對應(yīng)的內(nèi)容加起來就是此依賴所指向的本地倉庫的jar包的位置.

第二種:怎么定位右側(cè)maven窗口的某個(gè)依賴在本地倉庫的位置
可以看到,下面劃線的名稱就是在本地倉庫的路徑位置.

第三種:報(bào)錯(cuò)org.apache.xmlgraphics.fonts.Glyphs這個(gè)路徑下的Glyphs類找不到
上面報(bào)錯(cuò)的路徑并不是在本地maven倉庫的絕對路徑.而是此Glyphs類在自己的jar包中的類路徑,
怎么找呢,就是隨便找一個(gè)項(xiàng)目中的存在的類,然后 import org.apache.xmlgraphics.fonts.Glyphs;
導(dǎo)入這個(gè)類

然后ctrl + 左鍵, 找到這個(gè)類,然后點(diǎn)擊定位按鈕,就能看到這個(gè)類的所屬的jar包在本地倉庫的絕對路徑了.

其他的后面再補(bǔ)充.
到此這篇關(guān)于如何獲取當(dāng)前 JAR 包的存放位置的文章就介紹到這了,更多相關(guān)JAR 包的存放位置內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
使用java自帶des加密算法實(shí)現(xiàn)文件加密和字符串加密
這篇文章主要介紹了使用java自帶des加密算法實(shí)現(xiàn)文件加密和字符串加密的示例,需要的朋友可以參考下2014-03-03
Java編程實(shí)現(xiàn)漢字按字母順序排序的方法示例
這篇文章主要介紹了Java編程實(shí)現(xiàn)漢字按字母順序排序的方法,結(jié)合具體實(shí)例形式分析了java編碼轉(zhuǎn)換及字母排序相關(guān)操作技巧,需要的朋友可以參考下2017-07-07
SpringBoot使用quartz,注入feignClient,client為null問題
在SpringBoot中使用Quartz和FeignClient時(shí),如果通過@Autowired或構(gòu)造方法注入FeignClient導(dǎo)致為null,可以使用Spring提供的通過文件名獲取bean的方式解決,這種方法在Quartz啟動時(shí)通過反射注入類,而類還未初始化好,導(dǎo)致FeignClient為null的問題2024-11-11
MyBatis學(xué)習(xí)教程(五)-實(shí)現(xiàn)關(guān)聯(lián)表查詢方法詳解
本文給大家介紹mybatis關(guān)聯(lián)查詢,包括一對一關(guān)聯(lián)查詢,一對多關(guān)聯(lián)查詢,代碼簡單易懂,感興趣的朋友一起學(xué)習(xí)吧2016-05-05
feign參數(shù)過多導(dǎo)致調(diào)用失敗的解決方案
這篇文章主要介紹了feign參數(shù)過多導(dǎo)致調(diào)用失敗的解決方案,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-03-03
Mybatis中collection和association的使用區(qū)別詳解
這篇文章主要介紹了Mybatis中collection和association的使用區(qū)別詳解,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-11-11

